ngrx /存储选择器模式与重新选择

时间:2017-06-21 21:28:33

标签: angular ngrx-store

我正在比较ngrx example app中实现的缩减器的当前样式与之前的样式,以便找出大型应用程序的每种方法的优缺点。

现在编码为:

export const getEntities = (state: State) => state.entities;

以前写的很像:

export function getEntities(state$: Observable<State>): Observable<IEntity[]> {
  return state$.select(state => state.entities)
}

虽然我确实喜欢使用reselect启用的当前简洁模式,但我必须说旧的模式吸引我,因为我可以清楚地看到输出中预期的数据类型。

由于它是一个Observable流,它还允许进行某些初步操作,例如过滤:

export function getEntities(state$: Observable<State>): Observable<IEntity[]> {
  return state$.select(state => state.entities)
    .filter(state => state.isLoaded)
}
OTOH,在一个快速增长的应用程序中,较旧的模式变得难以管理,代码量迅速爆发。

我想知道是否有一种中间模式可以充分利用这两个世界?

0 个答案:

没有答案