我在我的redux商店(ngrx)中使用"immutable": "^3.8.1",
。我知道它已安装,因为我已成功将我的声明转换为不可变对象
const immState = Imm.fromJS(state);
但是当我尝试使用此命令删除深度嵌套的项目时,我遇到了一个问题:
return immState.deleteIn(['days', dayKey, 'userMeals', state.focus_user], meal._id);
Immutable.js在命中'userMeals'
时抛出错误,经过进一步调查,似乎Imm.fromJS()
没有将深度嵌套对象转换为不可变结构。在下面的图像中,我尝试直接访问该属性,但它仍然没有将其转换为不可变对象。
这是某种预期的行为还是我错过了什么?