我正在尝试对 reduxer(学习)进行基本测试,看起来基本没有问题,但我收到此错误“\xc3\x97\n错误:Reducer“计数器”在初始化期间返回未定义。如果状态传递给“reducer 未定义,必须显式返回初始状态。初始状态不一定是未定义的。如果你不想给这个reducer 设置值,可以使用 null 代替 undefined。”
\n我相信这个反应是非常愚蠢的希望得到帮助。
\nReduxer 文件。\ncounter.js
\nconst counterReducer = (state = 0, action) => {\n switch (action.type) {\n case "INCREMENT":\n return state + 1;\n case "DECREMENT":\n return state - 1;\n }\n};\n\nexport default counterReducer;Run Code Online (Sandbox Code Playgroud)\r\nisLogged.js
\nconst loggedReducer = (state = false, action) => {\n switch (action.type) {\n case "SING_IN":\n return !state;\n default:\n return state;\n }\n};\nexport default loggedReducer;Run Code Online (Sandbox Code Playgroud)\r\nimport counterReducer from "./counter";\nimport loggedReducer from "./isLogged";\nimport { combineReducers } from "redux";\n\nconst allReducers = combineReducers({\n counter: counterReducer,\n isLogged: loggedReducer,\n});\n\nexport default allReducers;Run Code Online (Sandbox Code Playgroud)\r\nsrc 文件夹>index.js。
\nimport React from "react";\nimport ReactDOM from "react-dom";\nimport "./index.css";\nimport App from "./App";\nimport * as serviceWorker from "./serviceWorker";\nimport { createStore } from "redux";\nimport allReducer from "./reducers";\n\nconst store = createStore(\n allReducer,\n window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__()\n);\n\nReactDOM.render(\n <React.StrictMode>\n <App />\n </React.StrictMode>,\n document.getElementById("root")\n);\n\n\nserviceWorker.unregister();Run Code Online (Sandbox Code Playgroud)\r\n你应该默认从reducer返回
const counterReducer = (state = 0, action) => {
switch (action.type) {
case "INCREMENT":
return state + 1;
case "DECREMENT":
return state - 1;
default:
return state;
}
};
Run Code Online (Sandbox Code Playgroud)
每个减速器都会收到发送的每个操作。如果您不知道操作类型,则应该原封不动地返回状态。
| 归档时间: |
|
| 查看次数: |
4031 次 |
| 最近记录: |