我的Redux商店里有这个initialState
:
const initialState = {
isFetching : false,
active : {}
}
active
是一个对象。
现在我有一个应追加的操作,或者向active
的{{1}}属性添加属性,如下所示:
data
如您所见,[DASHBOARD_TEMPLATE_DATA_RECEIVE]: (state, action) => {
return Object.assign({}, state, {
isFetching : false,
active : Object.assign({}, active, {data[action.key]: action.data})
})
}
是不允许的。我该怎么做?
答案 0 :(得分:4)
试试这个:
active: Object.assign({}, active, {
data: Object.assign({}, data, {
[action.key]: action.data
})
})
答案 1 :(得分:1)
我猜计算属性名称可能有效。
未测试:
active: Object.assign({}, active, {[data[action.key]]: action.data})
答案 2 :(得分:0)
首先构建对象,使用方括号表示法将字符串用作属性名称:
Do you want to disconnect from the process <name of xdebug process>?
然后使用新创建的对象:
var data = {};
data[action.key] = action.data;