问题描述
尽管根本没有分派动作,但是ngrx选择器具有发射值是正常的吗?
即使我的应用中未调度任何操作,此console.log也会在此处运行
this.bookmarks$ = this.store.pipe(
select(fromBookmarks.selectBookmarks),tap(_ => console.log('fetch bookmarks'))
);
第一次skip(1)
还是可以的,这有点怪。
解决方法
是的,选择器和动作是独立的:选择器查询状态,reduce侦听动作以更新状态。所以:
- 总有一个状态,应用启动时的初始状态==>选择器将始终返回一个值
- 动作不会总是更改状态,减速器可以忽略它们。