我在这里找不到任何关于这个错误的信息:

"存储区没有有效的缩减器.请确保传递给combineReducers的参数是其值为缩减器的对象."

我的减速机

export default function FriendListReducer(state = {friends : []}, action) {
  switch (action.type) {
    case 'ADD_FRIEND':
      return [
        { friends : action.payload.friend }, ...state.friends
      ]     
    default:
      return state;
  }
  return state;
}

组合器

import { combineReducers } from 'redux';
import { FriendListReducer } from './FriendListReducer';

const rootReducer = combineReducers({
  friends: FriendListReducer
});
export default rootReducer;

我的store 配置

import { applyMiddleware, createStore } from 'redux';
import thunkMiddleware from 'redux-thunk';
import createLogger from 'redux-logger';
import rootReducer from '../reducers/reducers';

export default function configureStore(initialState = { friends: [] }) {
  const logger = createLogger({
    collapsed: true,
    predicate: () =>
    process.env.NODE_ENV === `development`, // eslint-disable-line no-unused-vars
  });

  const middleware = applyMiddleware(thunkMiddleware, logger);

  const store = middleware(createStore)(rootReducer, initialState);

  if (module.hot) {
    // Enable Webpack hot module replacement for reducers
    module.hot.accept('../reducers/reducers', () => {
      const nextRootReducer = require('../reducers/reducers').default;
      store.replaceReducer(nextRootReducer);
    });
  }

  return store;
}

推荐答案

你的陈述是错误的.你可以将import { Foo } from 'bar'export Foo一起使用,如果用export default Foo导出,则使用import Foo from 'bar'.

换句话说,将export default function FriendListReducer更改为export function FriendListReducer,或者将import语句从import { FriendListReducer }更改为import FriendListReducer.

Reactjs相关问答推荐

从app.js导航,这是在BrowserRouter包装之外

使用Thattle和Use Effect setTimeout进行搜索有什么不同

Reaction Ploly:如何在多个子情节中共享zoom 状态

如何使用Reaction Testing Library+Vitest正确更新单元测试中的输入?

React-React中是否完全支持基于类的组件?

太多的重新渲染 - React 中的无限循环.如何使用React.effect并使用fetch?

从 MongoDB createAt 字段中分割精确时间

列表中的每个子项都应该有一个唯一的keyprops .在react 应用程序中

使用获取的数据更新状态,但在try console.log 时它给出未定义

如何解决使用react-hook-form和yup动态创建的输入不集中的问题

useMemo 依赖项的行为

无法通过react 路由中的链接传递信息

未捕获的运行时错误:对象作为 React 子项无效

无法读取未定义的属性(读取值)...TypeError:无法读取未定义的属性(读取值)

为什么刷新页面时我的localStorage PET值变成空字符串?

Next.js i18n 路由不适用于动态路由

从一个获取 axios 请求(ReactJS)中删除默认参数

React Router 6.4CreateBrowserRouter子元素不显示

哪个是创建 React 应用程序的更好方法?

MUI 卡组件上的文本未正确对齐