Angular 调用父节点4的父节点中的函数

Angular 调用父节点4的父节点中的函数,angular,components,Angular,Components,我有一个子组件的子组件 我想调用父函数中的函数 公司 康普 康普 我的CompC想调用CompA中的函数 我是否必须将调用B中函数的输出添加到C中,将输出添加到B并调用a中的函数 有更直接的方法吗?同意@chellappan关于创建行为主体和发出事件的评论。您还可以使用DI实现 您可以在Compc中导入CompA,然后像这样调用 export class ChildComponent implements OnInit { constructor(private appc: AppComp

我有一个子组件的子组件

我想调用父函数中的函数

公司 康普 康普

我的CompC想调用CompA中的函数

我是否必须将调用B中函数的输出添加到C中,将输出添加到B并调用a中的函数


有更直接的方法吗?

同意@chellappan关于创建行为主体和发出事件的评论。您还可以使用DI实现

您可以在Compc中导入CompA,然后像这样调用

export class ChildComponent implements OnInit {

  constructor(private appc: AppComponent){}

  ngOnInit(){
    this.appc.callfromChild();
  }
}

同意@chellappan关于创建行为主体和发出事件的评论。您还可以使用DI实现

您可以在Compc中导入CompA,然后像这样调用

export class ChildComponent implements OnInit {

  constructor(private appc: AppComponent){}

  ngOnInit(){
    this.appc.callfromChild();
  }
}

使用
forwardRef
注入父组件,并从子组件调用父组件
f()
,如下所示:

constructor(@Inject(forwardRef(() => ParentComponent)) public _parent: ParentComponent){}

ngOnInit(){
    this._parent.f();
}

使用
forwardRef
注入父组件,并从子组件调用父组件
f()
,如下所示:

constructor(@Inject(forwardRef(() => ParentComponent)) public _parent: ParentComponent){}

ngOnInit(){
    this._parent.f();
}

创建服务并使用rxjs行为主题是的,共享服务是创建服务并使用rxjs行为主题的方法是的,共享服务是一种方法