我似乎无法修改immutable.js记录,这是我的应用程序的redux存储。
onActivityCreated
vepo.some不会更新到200,它会保持10
我的redux商店不会从减速机更新。
它应该工作。当我在这里设置断点时:
这里我在控制台中操纵状态,并且它不会持续存在:
答案 0 :(得分:3)
您正在尝试改变不可变对象。执行vepo.set('some', 200)
时,它不会修改vepo
,它会返回一个具有您指定值的新对象。
你可以试试这个:
const { Record } = require('immutable');
const makeVepo = Record({
product: 'function',
menu: 'function',
formControls: 'function',
some: 10
})
const vepo = new makeVepo()
const newObject = vepo.set('some', 200)
console.log(vepo.toJS()) // `some` is still 10
console.log(newObject.toJS()) // `some` is 200
在npm runkit或您当地的环境中尝试一下。新对象包含更新的值。
注意:我修改了代码,使其可以单独运行。