Redux 具有具有多个键的对象的更新状态
我的状态如下所示:Redux 具有具有多个键的对象的更新状态,redux,Redux,我的状态如下所示: { id1:{房屋:{名称:'x'},汽车:{}, id2:{房屋:{名称:'x'},汽车:{}, ... } 我想返回如下状态: { id1:{房屋:{},汽车:{}, id2:{房屋:{},汽车:{}, ... } 也就是说,我清空房屋入口。我不知道如何用不可变的reducer方法实现这一点,因为状态可以有许多条目(id1、id2、id3等等)很棘手,但我尝试的方法是使用和 很棘手,但我会尝试的方法是 这个问题解决了吗?如果没有,也许你需要澄清这个问题。这个问
{
id1:{房屋:{名称:'x'},汽车:{},
id2:{房屋:{名称:'x'},汽车:{},
...
}
我想返回如下状态:
{
id1:{房屋:{},汽车:{},
id2:{房屋:{},汽车:{},
...
}
也就是说,我清空房屋入口。我不知道如何用不可变的reducer方法实现这一点,因为状态可以有许多条目(id1、id2、id3等等)很棘手,但我尝试的方法是使用和
很棘手,但我会尝试的方法是
这个问题解决了吗?如果没有,也许你需要澄清这个问题。这个问题解决了吗?如果没有,也许你需要澄清这个问题。
const originalObj = {
id1: { houses: { name: 'x' }, cars: { dontTouch: 'me1'} },
id2: { houses: { name: 'x' }, cars: { dontTouch: 'me2'} },
id3: { houses: { name: 'x' }, cars: { dontTouch: 'me2'} }
};
const initalValue = {};
const objWithResetHouses =
Object.entries(originalObj)
.reduce((acc, [propName, value]) => {
// "copy" every property, then write over "houses" with an empty object
acc[propName] = {...value, houses: {}};
return acc;
}, initalValue);
console.log(objWithResetHouses);