【发布时间】:2020-06-18 16:37:52
【问题描述】:
我在使用 redux-toolkit configureStore 函数时遇到了一些问题,每当我尝试在页面上调用 dispatch 时,都会出现“Store 没有有效的 reducer”错误。我想我的导入是正确的,并且商店也在我的 index.js 文件的上层。
这就是它的样子:
store.js 文件:
import { configureStore } from "@reduxjs/toolkit";
import bookReducer from "../reducers/book";
export default configureStore({
reducer: { books: bookReducer }
});
book.js 文件:
import { createSlice } from '@reduxjs/toolkit'
export const bookSlice = createSlice({
name: 'books',
initialState: {
bookList: []
},
reducers: {
getBookSuccess: (state, action) => console.log(action.payload),
getBookFailure: (state, action) => console.log(action.payload),
setLoading: (state, action) => ({ ...state, loadingTarget: action.loadingTarget, loadingType: action.loadingType })
}
})
export const { getBookSuccess, getBookFailure, setLoading } = bookSlice.actions;
export default bookSlice.reducer;
index.js 文件:
import React from 'react';
import ReactDOM from 'react-dom';
import './index.scss';
import App from './App';
import store from './app/store';
import { Provider } from 'react-redux';
import './fontAwesome'
ReactDOM.render(
<React.StrictMode>
<Provider store={store}>
<App />
</Provider>
</React.StrictMode>,
document.getElementById('root')
);
提前致谢!
【问题讨论】:
-
这看起来有效。你能记录一下
booksReducer在你的store.js文件中的内容吗?它实际上是一个函数吗? -
哦,您的评论表明,甚至日志记录都不起作用,导入来自另一个文件夹中的另一个商店。我的错!还是谢谢!!
标签: javascript reactjs redux redux-toolkit