嗨,我尝试开始学习在React中使用ImmutableJS。但我冻结了。当我尝试在我的减速器使用名单上有此错误“state.push是不是一个函数”在Redux中的ImmutebleJS - 减速器得到错误“state.push不是函数”
这里是MI代码:
import { List, Map} from 'immutable'
import {FETCH_CONSTRAINTS, SET_AMOUNT_VALUE, SET_TERM_VALUE} from "../actions/actions";
export default function calculator(state = List(), action){
switch (action.type){
case FETCH_CONSTRAINTS:
return state.push(Map({
constraints: action.constraints}));
default:
state
}
}
我不明白的地方是一个问题
你在默认情况下缺少'return' - 这可能是问题所在。在调用push之前,你得到了什么输出console.log状态? – azium
这绝对是回报,因为缺少回报,它会得到一个“未定义”,当存储被初始化时它被设置为状态。 –