我试图在我的angular2应用程序中添加预加载器,但我已经卡住了,无法在互联网上找到答案。
我将我的预加载器组件添加到主应用程序并创建了一个实例。现在,我尝试通过在主应用程序中注入类并执行show()
方法来更改预加载器组件中的属性。但是只要我注入预加载器类,我就可以看到我的预加载器的另一个实例被启动,因此方法的执行不会改变渲染组件的属性。
我创建了this plunker,因此您可以看到我的问题。
答案 0 :(得分:1)
如果您想要全局服务(单身人士),只需将其添加到bootstrap(AppComponent, [MySingletonService])
,但不要将其添加到其他地方,例如@Component({providers: [...]})
在你的情况下,这还不够,因为你想要访问一个组件,如上所述的单例只适用于服务。
您可能希望使用中间服务或事件总线,并使用Angular2 emit event up to the DOM tree中所述的事件进行通信