При вызове createStore () я получаю: TypeError: middleware не является функцией - PullRequest
0 голосов
/ 02 июля 2019

Перед отметкой здесь есть дубликаты, обратите внимание, что я проверил:

Я пытаюсь интегрировать redux-thunk и использовать замену replaceReducer в моем магазине Redux одновременно.

По сути, у меня есть где-то:

const {createStore, applyMiddleware} = require('redux');
const thunk = require('redux-thunk');
createStore(function() {return {}}, applyMiddleware(thunk));
// also tried
// createStore(function() {return {}}, {}, applyMiddleware(thunk));

И позже:

store.replaceReducer(someCombinedReducer);

Сейчас я получаюошибка вызвана линией createStore() (т.е. перед любой заменой редуктора).

TypeError: middleware is not a function

Версии:

  • redux: 4.0.1
  • redux-thunk: 2.3.0

РЕДАКТИРОВАТЬ:

Трассировка стека указывает на функцию applyMiddleware точно так же, как в этом вопросе TypeError: связующее ПО не является функцией прямо из звонка.

1 Ответ

0 голосов
/ 03 июля 2019

После хорошей ночи сна и некоторых настроек.

// thunk here is not undefined but and object
const thunk = require('redux-thunk');

Должен быть заменен на:

const thunk = require('redux-thunk').default;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...