【问题标题】:Angular 2 Send data between two componentsAngular 2 在两个组件之间发送数据
【发布时间】:2018-04-05 16:22:38
【问题描述】:

如何在 Angular 2 应用程序中的两个组件之间发送数据,考虑: - 两个不同路径中的两个组件(因此,唯一共享的组件是根组件)

我已经设法: - 但是使用共享服务或单例,我怎样才能将事件从第一个组件触发到另一个(位于另一个路由中)

我已经设法使用输出到根之前的最后一个组件来触发事件(但不是跨根应用程序组件)

感谢任何帮助、链接、线索!

<div class="wrapper">
   <div class="tasks-list">
    <router-outlet></router-outlet>
  </div>
<div  class="details">
    <task-details></task-details>
  </div>
</div>

这是 app.component.html

当单击它应该在“task.details.component”中打开的项目时,我有一个“task.component”列表。 我希望我能很好地说明这个想法。

【问题讨论】:

标签: angular


【解决方案1】:

请通过这个:

https://angular.io/docs/ts/latest/cookbook/component-communication.html#!#bidirectional-service

父组件和它的子组件共享一个服务,该服务的接口支持在家族内进行双向通信。

服务实例的范围是父组件及其子组件。此组件子树之外的组件无法访问服务或其通信。

【讨论】:

    【解决方案2】:

    使用$rootScope。在此处创建变量,该变量在任何地方都可见。

    【讨论】:

    • Angular2中没有根范围
    • 也可以创建全局变量并为其添加观察者
    猜你喜欢
    • 2020-01-21
    • 2018-02-22
    • 1970-01-01
    • 2019-07-20
    • 2020-02-16
    • 2017-01-12
    • 2021-02-27
    • 2020-10-10
    相关资源
    最近更新 更多