2016-11-10 85 views
-1

我是Angular 2的初学者,现在正在开发小型SPA。在组件登录中,我通过http服务接收一些数据,将数据设置到类User中,并且需要该数据在一些其他组件中可用。问题是组件是完全独立的(没有父子关系)。 Angular 2中是否有任何机制以这种方式传递数据?在Angular 2中独立组件之间传递数据

+3

https://angular.io/docs/ts/latest/cookbook/component-communication.html –

+0

是的,我已经读过了。但第一个组件不包含模板中的第二个组件。使用this.router.navigate(['/ main'])加载第二个组件的内容 – Yuriy

+0

看看Parent和儿童通过@JBNizet给出的链接的服务部分进行通信。主题用法是你所需要的。 – echonax

回答

4

首先,我想推荐您使用Service在组件之间传递数据。

以下是一些示例组件如何使用3 diff进行通信的示例。方式,

Angular2-playground Demo其代码available on Github

假设,如果你正在创建服务S1app.module.ts文件提供该服务将创建一个服务的Singleton实例,如果从使服务变更组件1,比你可以在组件2获得修改的数据。

或者您可以像在独立模块中添加服务一样使用单独的功能,以便只能在该模块中访问该服务。

总结:您可以使用服务来传递组件之间的数据,这将非常有帮助。

相关问题