2

我目前正在使用 ngrx 实体开发一个 ngrx 商店项目,我想在其中编写一些选择器,如下所示:

export const selectProductById = (productId: number) => createSelector(
  selectProductState,
  productsState => productsState.entities[productId]
);

export const selectCurrentProduct = createSelector(
  selectProductState,
  productsState => productsState.entities[productsState.selectedProductId]
);

我想在选择器中使用selectProductById选择selectCurrentProduct器,如下所示:

// doesn't work
export const selectCurrentProduct = createSelector(
  selectProductState,
  productsState => selectProductById(productsState.selectedProductId)
);

语法是什么?这会导致我尝试使用selectCurrentProduct选择器时出现编译错误:

类型“Observable<emoizedSelector<object, Product>>”不可分配给类型“Observable<Product>”

更新

感谢所有的链接和东西,但他们并没有真正解决我的问题。我正在寻找createSelector()使用另一个选择器创建一个选择器,该选择器也是由createSelector(). 请看我上面的伪代码。我正在尝试使用选择器来使用selectProductByIdte selectProductById

4

0 回答 0