只有todos里的state被immutable.fromJS处理,为什么filter和text也需要用get获取了呢

来源:5-7 常用库集成:Immutable.js(1)

Funking

2019-12-18

filter和text的state不是没经过immutable.fromJS处理吗,经过转化的只有todos的state啊?

// reducers/todos.js中
const reducers = (state = immutable.fromJS(initialState), action) => {
......
}
// reducers/text.js 中
const text = (state = '', action) => {
...
}

然后在selectors/index.js中:

export const getText = (state) => state.get("text");

也不会报错,之前课程里我们知道,todos.js和text.js中的reducer的传参state并只是一部分的state,也就是说被immutable.formJS处理过的只有todos数组啊,应该是这样吧。那么为什么获取text和filter的时候我们也需要使用get获取到呢

写回答

1回答

艾特老干部

2019-12-20

你好,immutable.fromJS是为了将JS对象转换成immutable封装的不可变对象格式,而filter和text是字符串类型,本身已经是immutable类型了,所以不需要额外处理。

0
3
袁门弟子
回复
Funking
字符串不具备get方法,但是它所在对象经过转换具有了get方法
2020-05-26
共3条回复

React16+Redux实战企业级大众点评Web App

从架构设计到部署上线,带你学习React技术栈与核心思想

1071 学习 · 306 问题

查看课程