如何在角度2中的组件之间共享数据?

如何在角度2中的组件之间共享数据?

在角1.x.x中,您只需请求相同的服务,最终得到相同的实例,从而可以共享服务中的数据。

在角度2中,我有一个组件,它引用了我的服务。我可以读取和修改服务中的数据,这是很好的。当我试图在另一个组件中注入相同的服务时,我似乎得到了一个新实例。

我做错什么了?是模式本身是错误的(使用服务共享数据),还是需要将服务标记为单例(应用程序的一个实例内)或其他什么?

我上了2.0.0-alpha.27/顺便说一句

我通过appInjector(编辑:现在providers)在@Component注释,然后在构造函数中保存引用。它在组件中本地工作-只是不像我想的那样跨组件(它们不共享相同的服务实例)。

更新:从角2.0.0开始,我们现在有@ngModule,您将在providers财产上说@ngModule..这将确保将该服务的相同实例传递给该模块中的每个组件、服务等。https:/angular.io/docs/ts/最新/Guide/ngmodule.html#Providers


侃侃无极
浏览 519回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP