【发布时间】:2017-08-01 09:55:54
【问题描述】:
我的减速器最初具有以下不可变状态:
const firstState = Map({ "1": {title: "Hello 1", content: "Content 1"}, "2" : {title: "Hello 2", content: "Content 2"} });
现在,在我的 reducer 中,当 EDIT_POST 操作进入时,如果用户更改了这些字段,我想更改其中的一些字段。所以说用户只编辑了标题字段(第 1 号帖子)。然后我想要一个新的状态,标题字段已更改,但内容字段不变。
但是,我不知道该怎么做。
我已经尝试了一些东西,例如这两件事(在不同的时间):
case 'EDIT_POST': {
var obj = state.get(action.id);
//let newState = state.setIn(['1','title'], 'New Title');
//let newState = state.set("1", {title: "New Title"});
return newState;
}
第一件事根本不起作用,第二件事消除了所有其他价值。
【问题讨论】:
标签: javascript reactjs immutability immutable.js