【发布时间】:2017-07-13 14:18:22
【问题描述】:
我买了一个 Angular 4 模板,主要是为了看看布局是如何完成的,但包括工作组件,我注意到它们在应用程序组件中有一堆设置,主要用于菜单、更改样式、主要控制外部框架.
在菜单组件和其他几个组件中,它们使用以下方式与 AppComponent 设置进行通信:
constructor(@Inject(forwardRef(() => AppComponent)) public app:AppComponent) {}
并且会在菜单组件中调用类似:this.app.darkMenu = true
这个有效的设计,好的,坏的,过时的?我什至不知道您可以像这样与 App 或父组件通信?这应该是 Observable Subject 或 EventEmitter,还是可以通过 forwardRef 进行通信?这在 .NET 中似乎很相似,我可以使用 this.master.whateverproperty 与 MasterPage 进行通信。
我喜欢 forwardRef 的工作方式,但不确定是否应该使用它或更改它以进行不同的通信??
【问题讨论】:
-
我看到你已经得到了答案,但我想我会分享这个:hackernoon.com/…