商店没有有效的减速器?

Posted

技术标签:

【中文标题】商店没有有效的减速器?【英文标题】:Store does not have a valid reducer? 【发布时间】:2019-09-17 07:21:47 【问题描述】:

这是我第一次使用 React 和 Redux。我无法找到它周围的错误。

"webpack-internal:///./node_modules/react-error-overlay/lib/index.js:1446 Store没有有效的reducer。确保传递给combineReducers的参数是一个对象,其值为reducer 。”

这是减速器:

import  combineReducers  from 'redux';

const rootReducer = combineReducers();

export default rootReducer;

【问题讨论】:

【参考方案1】:

如果对象为空。

const rootReducer = combineReducers();

将显示此错误。

在其中添加一些数据,例如:

import  combineReducers  from 'redux';
import foo from '../foo' //this is your reducer

const rootReducer = combineReducers(foo);
export default rootReducer;

reducer 示例

//reducer/foo.js
export default function foo(state = null, action) 
     switch (action.type) 
         case 'MY_ACTION_TYPE':
           return action.payload
     
     return state;
 

【讨论】:

我已经尝试过您的解决方案,但它不起作用,它显示相同的错误。 combineReducers(foo: ); @vuogvuog 更新了我的帖子,foo 代表你的 reducer @vuogvuog 你能把你的减速机贴在这里吗? @vuogvuog 那不是reducer。 @vuogvuog 正如 Asaf Aviv 提到的,这不是减速器,我还添加了减速器示例

以上是关于商店没有有效的减速器?的主要内容,如果未能解决你的问题,请参考以下文章

NGRX 效果看不到商店中的完整状态

作用于多个商店的动作

如何使用react-redux将redux商店中封装的ui状态映射到道具?

当我更新商店时 Redux 不会重新呈现

谷歌商店怎么解决核对信息?

语言更改在上传到 Google Play 商店之前有效,但在上传到 Play 商店后无效。为啥?