我开始玩一些 redux,到目前为止我很惊讶。我现在的问题是,我的新 reducer 函数改变了一个状态变量的类型,我不希望这样。
状态应具有如下形式:
我只想从 jsons 数组中删除一个对象:
pseudo:
delete state.items[item_index].jsons[json_to_delete_index]
我最终得到了这个 reducer,它现在将项目状态作为对象而不是数组返回。
case DELETE_JSON:
const item_index = state.items.findIndex((url) => url.url_id === action.payload.url_id);
const json_index = state.items[item_index].jsons.findIndex((json) => json.json_id === action.payload.json_id);
return {
...state,
items: {
...state.items,
[item_index]: {
...state.items[item_index],
jsons:
[
...state.items[item_index].jsons.splice(0, json_index),
...state.items[item_index].jsons.splice(json_index + 1)
]
}
}
};
到目前为止,我尝试了各种方法,但是在高度嵌套的对象中更改状态似乎仍然是对 redux 的一种折磨。有人可能知道写它的方法吗?
幕布斯6054654
临摹微笑
相关分类