我有一个接受 populateKey
作为参数的函数,并且该参数被传递并在名为 substate 的新状态中使用。子状态现在如下所示:let subState = _.get(state, "meta.populate."+ populateKey);
。 Immutable 有什么方法可以实现同样的功能吗?
编辑:我现在使用这种方法:参见屏幕截图,但我得到“state.updateIn”不是一个函数。出现这种情况有什么原因吗?
最佳答案
有Map#getIn()
:
// Example state
let state = Immutable.fromJS({ meta : { populate : { someKey : { some : 'value' } } } });
// Get the substate
let populateKey = 'someKey';
let subState = state.getIn([ 'meta', 'populate', populateKey ]); // Map { "some" : "value" }
这显然假设 state
是一个不可变对象(immutable对象),并且对其进行的任何更改也会作为不可变对象(immutable对象)在整个应用程序中传播。
关于javascript - 扩展深层嵌套 prop 中的属性 ImmutableJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38137968/