看起来您正在将几个商店增强器传递给 createStore() react-thunk

It looks like you are passing several store enhancers to createStore() react-thunk

我在尝试使用 redux 一段时间后遇到了一个问题,我找到了解决方案(此处:React Redux - Error passing several store enhancers to createStore())但这不是我想要的解决方案。基本上我在创建我们这样做的 redux 商店时基本上遇到了与问这个问题的人相同的问题:

import { createStore, applyMiddleware } from "redux";
import { composeWithDevTools } from "redux-devtools-extension";
import reduxThunk from 'redux-thunk';
import rootReducer from "./reducers";

const store = createStore(
  rootReducer,
  composeWithDevTools(applyMiddleware(reduxThunk)),
  window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__()
);

但是上面的代码不是创建商店的正确方法,显然你应该像这样创建商店:

import { createStore, compose, applyMiddleware } from "redux";
import reduxThunk from "redux-thunk";
import rootReducer from "./reducers";

const composeEnhancer = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;

const store = createStore(
  rootReducer,
  composeEnhancer(applyMiddleware(reduxThunk))
);

但是在上面的解决方案中我没有使用我想要使用的 composeWithDevTools 模块。在这种情况下有没有办法使用 composeWithDevTools 并且是否有必要使用 composeWithDevTools?

今天你应该使用 our official Redux Toolkit package to write your Redux logic, and in particular, RTK's configureStore API

configureStore 自动为您设置 Redux DevTools Extension,自动打开 thunk 中间件,如果需要,还可以轻松添加额外的商店增强器。

您展示的示例将是:

const store = configureStore({
  reducer: rootReducer
});

并且行为与您展示的完全相同。