В магазине нет действующего редуктора при использовании redux-toolkit - PullRequest
0 голосов
/ 18 июня 2020

У меня проблемы с функцией configureStore redux-toolkit, всякий раз, когда я пытаюсь вызвать диспетчеризацию на странице, она выдает мне ошибку «Магазин не имеет допустимого редуктора». Полагаю, мой импорт правильный, а хранилище находится на верхнем уровне моего индекса. js файл.

Вот как это выглядит:

хранилище. js файл:

import { configureStore } from "@reduxjs/toolkit";
import bookReducer from "../reducers/book";

export default configureStore({
  reducer: { books: bookReducer }
});

книга. 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;

индекс. 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')
);

Заранее спасибо!

Ответы [ 2 ]

2 голосов
/ 19 июня 2020

Собственно это была моя ошибка, магазинов было два (один из шаблона). Я импортировал исходный файл вместо созданного.

1 голос
/ 18 июня 2020

Думаю, если вы измените configureStore на это:

export default configureStore({
  reducer: bookReducer
});

Это должно работать.

...