如何使用angular 5中正在使用的组件的方法?

如何使用angular 5中正在使用的组件的方法?,angular,Angular,在我的项目中,我想使用服务中组件的方法。我想在AdminService中调用AdvisorComponent的ngOnInit()。服务是这样的: import {AdminAdvisorListComponent} from "../components/admin- components/admin-advosor-list/admin-advisor-list.component"; @Injectable() export class AdminService { public t

在我的项目中,我想使用服务中组件的方法。我想在AdminService中调用AdvisorComponent的ngOnInit()。服务是这样的:

import {AdminAdvisorListComponent} from "../components/admin- 
components/admin-advosor-list/admin-advisor-list.component";

@Injectable()
export class AdminService {

public token: string;
public headers: any;

constructor(private http: Http,
          private apiService: ApiService,
          private adminAdvisorList: AdminAdvisorListComponent) {}

initializeAdvisorPage() {
this.adminAdvisorList.ngOnInit();
 }
}
AdminAdvisorListComponent代码为:

import {AdminService} from '../../../services/admin.service';

export class AdminAdvisorListComponent implements OnInit {
constructor(private adminService: AdminService){}
ngOnInit(): void {
    this.adminService.getAdvisorList().subscribe(
        res => {
            if (res) {
                this.users = res;
            }
        });
}
有了这些代码,它就会出错

无法解析AdminAdvisorListComponent的所有参数:(?,[object object],[object object],[object object],[object object],[object object])。 我应该如何处理此请求? 谢谢你的帮助


这完全没有道理。组件使用服务,反之亦然。框架调用了ngOnInit():你不应该自己调用这个方法。重新考虑你的设计。从服务调用UI组件不是一个好主意。特别是,您不想手动调用生命周期方法。组件是不可注入的。它们未在Angular的喷油器上注册。所以这是不可能的。服务不应初始化组件。考虑使用路由器代替。U不能注入组件。此外,您正在尝试执行循环依赖项注入,但这是不可能的。如果您也将服务注入组件,那么它也会导致循环依赖项问题。