为动态商店属性分配reducer

时间:2015-10-31 00:21:48

标签: javascript reactjs redux

我试图弄清楚如何在状态树中为从用户事件创建的属性设置reducer。

我的状态树看起来像这样:

{
  session: { session object },
  dashboard: {
    id: 'id001',
    charts: {
      'cid001': { dimensions: { ... }, more objects... },
      'cid002': { dimensions: { ... }, more objects... }
    }

  } 
}
当用户单击“添加图表”按钮时,

新的charts属性通过Redux进入。密钥设置为图表ID cid

我目前正在使用combineReducers()设置reducer树。

import session from './session';
import charts from './charts';

const rootReducer = combineReducers({
  session,
  dashboard: combineReducers({
    charts
  });
});

如果我提前知道属性名称,我可以像这样嵌套reducer。但是,我想避免使用charts属性的大量减速器,因为它内部的每个图表上最多可以有20个需要减少的对象,dimensions只是一个例子

有没有办法为charts['cidxxx'].dimensions和其他子属性设置减速器?这是否有通配符令牌?有什么想法吗?

1 个答案:

答案 0 :(得分:0)

对象传播对于这样的事情会很好。

OR

如果您希望在属性树方面比这更深入,那么可能值得考虑如何更改数据的形状以匹配您的使用方式。

相关问题