Angular - 在兄弟组件之间共享数据而不在实例之间共享

标签 angular service components instantiation

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

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

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

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

最佳答案

在组件级别提供服务:

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

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

关于Angular - 在兄弟组件之间共享数据而不在实例之间共享,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46124618/

相关文章:

javascript - 方法在传递给组件的 HTML 时没有上下文

android - RxJava 和 Android 服务

javascript - 如何根据按钮的点击事件提供此函数的不同 Prop ?

forms - Delphi中如何访问父窗体

angular - Angular 6 中主布局 socket 中的嵌套 socket

html - 在运行时以 Angular 获取 css 类的宽度

ios - iOS 中的位置服务

Python Windows 服务 pyinstaller 可执行文件错误 1053

android - 检测 Spinner 组件时出现问题

angular - 如何通过 Angular 代码输入导航到组件