//我的store.js
import {createStore, combineReducers, applyMiddleware} from "redux";
import thunk from "redux-thunk";
import {composeWithDevTools} from "redux-devtools-extension";
import {
//productsDetailReducer,
productsReducer,
} from "./reducers/productReducer";
import {userReducer} from "./reducers/useReducer";
const reducer = combineReducers({
products: productsReducer,
//productDetails: productsDetailReducer,
user: userReducer,
});
const initialState = null;
const middleware = [thunk];
const store = createStore(
reducer,
initialState,
composeWithDevTools(applyMiddleware(...middleware))
);
export default store;//ProductReducer.js
import {
ALL_PRODUCT_FAIL,
ALL_PRODUCT_REQUEST,
ALL_PRODUCT_SUCCESS,
CLEAR_ERRORS,
} from "../constants/productConstants";
export const productsReducer = (state = {products: []}, action) => {
switch (action.type) {
case ALL_PRODUCT_REQUEST:
return {
loading: true,
product: [],
};
case ALL_PRODUCT_SUCCESS:
return {
loading: false,
product: action.payload.products,
productsCount: action.payload.productsCount,
};
case ALL_PRODUCT_FAIL:
return {
loading: false,
product: action.payload,
};
case CLEAR_ERRORS:
return {
...state,
error: null,
};
default:
return state;
}
};//index.js
import React from "react";
import ReactDOM from "react-dom";
import App from "./App";
//import {BrowserRouter} from "react-router-dom";
import {Provider} from "react-redux";
import store from "./store";
ReactDOM.render(
<Provider store={store}>
<App />
</Provider>,
document.getElementById("root")
);//错误
未定义错误:键"user“的切片还原器在初始化过程中返回未定义的值。如果传递给还原器的状态未定义,则必须显式返回初始状态。初始状态可能不是未定义的。如果不想为这个还原器设置一个值,可以使用null而不是未定义的。
发布于 2022-05-22 17:57:39
只是犯了同样的错误。我花了一个小时才意识到我还没有在我的减速机里设置默认的箱子。您没有提供userReducer代码,但我认为问题在于默认情况。尝试返回默认情况下的状态。会起作用的
https://stackoverflow.com/questions/71831364
复制相似问题