getIn()不遍历不可变结构

时间:2017-02-20 23:47:58

标签: immutable.js

我的 immutable-js 库中有一个名为“firebase”的 OrderedMap ,它有三个叶子节点:

enter image description here

但我希望能够在firebase.auth检查有序地图:

newValue.getIn(['firebase', 'auth'])

但这不起作用:

enter image description here

有人可以帮助我理解我做错了什么。

1 个答案:

答案 0 :(得分:1)

您的auth是不可变OrderedMap,但您的firebase似乎是一个简单的JavaScript对象,而不是Immutable.js。因此为什么getIn不起作用。因此newValue.get('firebase').auth就足够了。

如果您没有使用redux-immutable软件包,那么由于combineReducers,您可能会遇到这些(和其他)问题。但是,使用redux-immutable创建的combineReducers使用Immutable.js API来迭代状态,因此请将其检出。