React Redux报错:'configureStore'未从'./app/store'导出如何解决
错误原因及修复方案
错误根因
- 你的
store.js文件是默认导出已经调用configureStore生成的store实例,没有对外导出名为configureStore的命名变量,所以你在index.js中用命名导入{ configureStore }会触发找不到导出的报错。 - 另外react-redux的
Provider组件接收的传参属性为store,不是configureStore,属性传错会导致Redux上下文无法正常注入。
正确修改代码
替换你的index.js对应代码为以下内容即可:
import React from "react"; import ReactDOM from "react-dom"; import "./index.css"; import App from "./App"; // 改为默认导入store实例,不要加花括号 import store from "./app/store"; import { Provider } from "react-redux"; ReactDOM.render( <React.StrictMode> {/* Provider指定store属性为导入的实例 */} <Provider store={store}> <App/> </Provider> </React.StrictMode>, document.getElementById("root") );
补充导入规则验证
ESModule导入导出规则对应:
- 模块使用
export default xxx导出时,导入语法为import 自定义变量名 from '模块路径',不需要加花括号 - 模块使用
export const xxx = xxx导出时,才需要用import { xxx } from '模块路径'的命名导入语法
内容的提问来源于stack exchange,提问作者Digamber negi
相关产品推荐
相关产品推荐

