Redux使用combineReducers时报reducer参数必填错误如何解决?
问题根因
configureStore 要求传入的是包含 reducer 属性的配置对象,你直接将 combineReducers 生成的根 reducer 函数作为参数传入,不符合入参格式要求,触发了参数校验报错。
修复方案
修改 store 代码为如下格式即可:
import { configureStore } from "@reduxjs/toolkit"; import reducer from "./rootReducer"; export const store = configureStore({ reducer: reducer });
额外注意点
- 注意你的切片文件名大小写:最初代码中导入路径是
./slices/CoinsAll,后续 rootReducer 中导入路径是./slices/coinsAll,Linux、macOS 系统对文件名大小写敏感,大小写不匹配会触发模块找不到的报错,建议统一路径写法。 - 如果你没有自定义 reducer 组合的特殊需求,不需要额外手动调用
combineReducers,configureStore内部已经集成了自动合并 reducer 的能力,直接将切片组成的对象传给reducer配置项即可,和手动调用combineReducers效果完全一致。
内容的提问来源于stack exchange,提问作者tjacqu2
相关产品推荐
相关产品推荐

