【发布时间】:2016-06-02 19:39:13
【问题描述】:
我正在订阅组件构造函数中的存储属性
constructor(private someService: SomeService){
someService.someObservable.subscribe((data: Some)=> {
this.some = data;
console.log('changed');
});
}
在服务中,构造函数如下所示:
constructor(private store: Store<any>){
this.someObservable = <Observable<{}>>store.select('some');
}
我不断改变这个对象的状态,但日志只出现一次。
同样奇怪的是,我直接在我的模板中访问this.some 属性(没有async 管道),并且它更新完美!
this.some 属性似乎正在更新,但订阅中的 next() 不起作用。
帮助任何人?谢谢!
【问题讨论】:
-
你们的服务是什么样的?
-
在服务器构造函数中我暴露了
Observable,像这样:this.some = <Observable<{}>>store.select('some') -
我很困惑。
some和 Observable 还是您的数据?您可以在示例中添加更完整的代码吗?最好是可以运行并重现问题的东西? -
我编辑了代码。希望它更清楚。
-
@GünterZöchbauer 不应该在每次商店发生变化时调用
next()吗?
标签: angular rxjs angular2-services ngrx