lys*_*030 2 observable rxjs angularjs angular-directive angular
我有两个并行指令(与父子一样),如果可能的话,我希望它们通过使用observable的服务进行通信.我已经阅读了官方组件交互guidline,但它讨论了父子互动.我尝试用两个指令制作一个plunker但它不起作用.
基本上,我想要的是创建一个服务:
export class DirService {
contentSource = new Subject();
content$ = this.contentSource.asObservable();
}
Run Code Online (Sandbox Code Playgroud)
然后,使用此服务在<dir1>和<dir2>之间建立桥梁.有人能指出如何实施这个senerio?
顺便说一句,我选择使用observable主要是因为:
谢谢!
如果您providers为每个组件添加"共享"服务
@Component({
selector: 'dir2',
template: '{{field}}',
providers: [DirService]
})
Run Code Online (Sandbox Code Playgroud)
然后为每个组件维护一个新实例.
要获得共享服务,您只需将其添加bootstrap(AppComponent, [DirService])到定义根组件和共享服务范围的组件和指令的一个共同祖先中.
这样每个后代都会获得相同的实例.
另请参阅
- AngularJs 2 - 创建的多个服务实例
- 如何在Angular2中正确使用依赖注入(DI)?
| 归档时间: |
|
| 查看次数: |
1663 次 |
| 最近记录: |