Angular - 在不共享实例之间共享同级组件之间共享数据

时间:2017-09-08 21:13:11

标签: angular service components instantiation

我正在编写一个包含三个独立组件的模块。这些组件协同工作,因此使用服务来帮助跟踪所有内容是有意义的。

|    
|- wrapper.component.ts
|
|- wrapper.service.ts
|
|- wrapper.module.ts
|
|- child-component1.component.ts
|
|- child-component2.component.ts

问题是,如果在应用程序中创建基本组件的两个实例,则服务将在组件的两个实例之间共享数据。

在兄弟姐妹之间共享数据而不在组件的所有实例之间共享数据的正确方法是什么?

2 个答案:

答案 0 :(得分:2)

在组件级别提供服务:

@Component({
    ....
    providers: [myService]
})

这样,服务实例在组件及其子组件之间共享,但不与组件的其他实例共享。

答案 1 :(得分:0)

  1. 您可以使用从子级1组件到父级
  2. 的事件发射器发出事件
  3. 使用从child 1
  4. 发出的数据将父输入更改为子2
  5. 访问子项2的ngOnChange中的数据