【发布时间】:2016-12-07 15:56:35
【问题描述】:
是否可以在根组件模板中添加组件并能够从子组件访问它。例如,假设这是根应用程序组件:
<main>
<global-component #globalComponent></global-component>
<child-component></child-component>
</main>
我想要的是,在“子组件”的代码中,能够做这样的事情:
@Component({...})
export class ChildComponent
{
@SomethingAwesome(GlobalComponent) globalComponent: GlobalComponent;
}
目标是能够始终以相同的方式显示错误/警告。 “GlobalComponent”模板将是一个模态消息,我希望能够随时显示它。例如:
...
this.globalComponent.ShowError("Something's weird in here !");
...
我想到的替代方案(我猜)是创建一个带有可观察的服务,“GlobalComponent”会订阅并做出相应的反应,但我想知道我问的是否可能。
编辑:
在示例中,组件是兄弟,但可能并非总是如此。 “GlobalComponent”应该在任何组件中都可用,无论其“深度”如何。
谢谢
【问题讨论】:
标签: angular