2

我正在尝试将我的应用程序配置为使用 redux-devtools,但它无法正常工作。

这是我在使用 redux-devtools 之前的配置

var persistedState = loadState();

var createStoreWithMiddleware = compose(applyMiddleware(thunk,loadingBarMiddleware(),errorBarMiddleware()),reduxReset())(createStore);

export var store = createStoreWithMiddleware(reducers,persistedState);

这是我使用 redux-devtools 所做的

const composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;
var createStoreWithMiddleware = compose(applyMiddleware(thunk,loadingBarMiddleware(),errorBarMiddleware()),reduxReset())(createStore);

const store = createStore(reducers, /* preloadedState, */ composeEnhancers(
  createStoreWithMiddleware(reducers,persistedState)
));

但是有了这个我得到了错误

Uncaught TypeError: reducer is not a function

那么,我在哪里错了?

4

1 回答 1

2

好吧,我发现了问题,现在它对我有用。

我所要做的就是将 redux devtools 代码添加到我以前的代码中,就像这样。似乎我让它变得比应该的更复杂。

无论如何,工作代码是

var persistedState = loadState();

var createStoreWithMiddleware = compose(applyMiddleware(thunk,loadingBarMiddleware(),errorBarMiddleware()),reduxReset())(createStore);

export var store = createStoreWithMiddleware(reducers,persistedState,window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__());

就这么简单。

于 2018-04-06T11:14:33.533 回答