作为有角度的应用程序,我正在研究中大型应用程序,因此动作数量(因此效果)也会增加。 一个人如何处理特定实体不断增长的动作/效果文件。
我试图将动作分成多个文件,但是Typescript枚举的问题在于它们无法合并。 最好的方法是什么? 我的想法之一是有一个专用的枚举文件,将动作按照文件所涉及的应用程序部分分开在文件中,然后为所有这些动作合并到一个单一类型中创建一个索引文件。
关于效果的相同问题。
由于它们是一个@Injectable
类,因此有可能将动作分离到不同的文件中,然后针对特定实体将它们“合并”到一个大类中
答案 0 :(得分:2)
目前处于测试阶段的NgRx 8,为此提供了解决方案:
createAction
:使用单个功能创建动作const increment = createAction('increment', props<{amount: number}>())
createReducer
:将化简器创建为对象图const reducer = createReducer(
{value: 0}, //initial state
on(increment, (state, action) => { value: state.value + action.amount }
)
@ngrx/data
:该扩展通过简化实体数据的管理同时减少了显式性,提供了对NgRx的简要介绍。更多信息,next.ngrx.io