我将ngrx实体用于我的商店,我无法使用选择器选择商店实体。我按照本示例中的代码 https://github.com/angular-university/angular-ngrx-course/blob/master/src/app/courses/course.selectors.ts
在我的情况下,当我在商店中使用选择时,我得到的是商店对象而不是实体。
这是我的减速机:
我将ngrx实体用于我的商店,我无法使用选择器选择商店实体。我按照本示例中的代码 https://github.com/angular-university/angular-ngrx-course/blob/master/src/app/courses/course.selectors.ts
在我的情况下,当我在商店中使用选择时,我得到的是商店对象而不是实体。
这是我的减速机:
这是因为选择器被包装在一个函数中。
const selectAll = () => createSelector(selectFoo, entities.selectAll);
因此,您必须调用该函数来获取选择器的数据而不是存储。
this.data = this.store.select(selectAll());
但我的问题是为什么选择器被包装,这并不是真正需要的。你可以做:
const selectAll = createSelector(selectFoo, entities.selectAll);
在您的组件中,您可以像现在一样使用它:
this.data = this.store.select(selectAll);
有关更多信息,请查看我的文章NgRx:参数化选择器