问题与片上()反应,终极版
问题描述:
我想要的状态复制与片(),然后操纵它并创建一个新的状态问题与片上()反应,终极版
这是我的减速机:
case types.LOAD_AMOUNT_CHECKINS_SUCCESS: {
let buildings = state.buildings.slice();
buildings['devices_error'] = action.checkins['error];
.
.
.
return Object.assign({}, state,
{buildings: buildings}
);
}
但应用slice()返回我:[]
我在哪里出错?
答
假设state.buildings
是一个对象(而不是一个阵列),改变第二线这样:
case types.LOAD_AMOUNT_CHECKINS_SUCCESS: {
let buildings = Object.assign({}, state.buildings);
buildings['devices_error'] = action.checkins['error];
.
.
.
return Object.assign({}, state,
{ buildings: buildings }
);
}
+0
谢谢!!!那是 –
答
要在阵列浅拷贝,你可以调用切片()只 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/slice
在你的代码示例中,您在对象上调用它不是在阵列上。
你是什么'state.buildings'阵列的切片前的值? – slugo