1

作为一个角度应用程序,我正在研究中型到大型的方法,因此动作的数量和效果也在增长。如何处理特定实体不断增长的动作/效果文件。

我曾尝试将操作分成多个文件,但 Typescript 枚举的问题是它们无法合并。这里最好的方法是什么?我的一个想法是拥有专用的枚举文件,根据它们所涵盖的应用程序部分在文件中分离操作,然后为所有这些操作合并为一个类型的索引文件。

关于效果的同样问题。由于它们是一个@Injectable类,是否可以将不同文件中的操作分开,然后针对该特定实体将它们“合并”到一个大类中

4

1 回答 1

2

目前处于测试阶段的 NgRx 8 提供了一个解决方案:

  • createAction: 使用单个函数创建动作
const increment = createAction('increment', props<{amount: number}>())
  • createReducer:创建reducers作为对象映射
const reducer = createReducer(
  {value: 0}, //initial state
  on(increment, (state, action) => { value: state.value + action.amount }
)
  • @ngrx/data:通过简化实体数据的管理同时减少显式性的数量,对 NgRx 进行了温和的介绍。

更多信息请访问next.ngrx.io

于 2019-05-12T15:56:53.157 回答