Im目前使用的商店是功能模块的扁平结构,即:
{
feature_A: {
A:'A',
B:'B'
},
feature_B:{
C:'C',
D:'D'
}
}
但是我想做的是:
{
feature_A: {
A:'A',
B:'B',
feature_B:{
C:'C',
D:'D'
}
}
}
也许是这样的: App.Module
StoreModule.forFeature('feature_A', fromFeature_A.feature_A_Reducers)
StoreModule.forFeature('feature_A.feature_B', fromFeature_B.feature_B_Reducers)
在网上寻找答案的过程并没有找到一个真正的分析器,只是建议它保持功能模块的扁平结构。
答案 0 :(得分:1)
ngrx
中的功能模块只是对象根的立即状态,因此实际上并没有嵌套功能模块的想法。
相反,您仍然可以通过将功能B的状态抽象为不同的文件(归约器,动作,效果...),但将其视为功能A的子状态,来实现类似的行为。
然后您可以创建一个选择器来访问特定功能B的状态:
const selectFeatureA = createFeatureSelector('feature_A');
const selectFeatureB = createSelector(selectFeatureA, (state) => state.feature_B);