我是ngrx的新手,使用ngrx可以问什么,有什么方法可以订阅状态更改中的一个字段。
假设我的状态为
export interface AppState {
fieldA: boolean;
fieldB: string;
};
如果有的话,现在在组件中
this.appState$ = store.select('appState');
this.appState$.subscribe((state) => {
this.fieldA= state.fieldA;
});
然后,即使fieldB被更改,订阅也会被触发。尽管我可以通过检查fieldA是否更改来过滤它,但是ngrx中是否有内置函数,所以我只能订阅fieldA的更改。
我尝试过
store.select(s => s.fieldA).subscribe((fieldA) => {
this.fieldA= fieldA;
});
但是,即使fieldA被更改,似乎也未触发此订阅。
谢谢。
答案 0 :(得分:0)
您应该
store.select('fieldA').subscribe((fieldA) => {
this.fieldA= fieldA;
});
或者,如果您想更深入一点,应该注意selectors。