我有一个关于在Angular 2中调用组件之间的函数的问题:
在我的导航组件(navigation.component.ts
)中,我有一个按钮,它调用一个函数:dispenseIfAbreise(){}
我@Output
这个函数通过EventEmitter:
this.abreisenExport.emit();
@Output()abreisenExport:EventEmitter<any> = new EventEmitter();
在我的tischplan.component.html
文件中,我使用以下代码发出函数abreisenRemoval()
:
(abreisenExport)="abreisenRemoval($event)
然后在abreisenRemoval($event)
(departments.component.ts
)文件中的被调用函数Parentcomponent
中,我调用Childcomponent
中的另一个函数:
@ViewChild(DepartmentsComponent)
private departmentsComponent: DepartmentsComponent;
abreisenRemoval() {
this.departmentsComponent.occupy();
}
Childcomponent
中调用的函数除了调用调用后端的服务之外还会发出另一个事件:this.updateImHausListeElement.emit();
在html文件中发出函数:
(updateImHausListeElement)="updateImHausListeElement($event);"
位于tischplan.component.ts
(Parentcomponent
)文件中:
在updateImHausListeElement(){}
函数中调用另一个函数,该函数再次位于ChildComponent: imHausListeComponent
@ViewChild(ImHausListeComponent private imHausListeComponent: ImHausListeComponent;
updateImHausListeElement() {
this.imHausListeComponent.updateImHausListeElement();
}
总之,我从NavigationComponent
发出一个函数调用Parentscomponent
,调用另一个Childcomponent
中的函数,该函数再次发出对Parentscomponent
的函数调用(除了对后端的服务函数调用),然后调用另一个Childcomponent
中的函数。
所以我的问题是,这是不好的做法,我在这里做什么?我在函数之间传递了其他参数,这与我认为的问题无关。
非常感谢您的努力。