首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在handleActions中使用combineReducers

如何在handleActions中使用combineReducers
EN

Stack Overflow用户
提问于 2019-08-23 22:46:24
回答 2查看 690关注 0票数 3

我正在尝试创建新的reducer survey,在使用redux-actions包中的handleActions时,它必须结合使用namequestions reducer。但我收到一个错误Invariant Violation: Expected handlers to be a plain object.我应该如何更改它才能真正工作?

代码语言:javascript
复制
import { Map, List } from 'immutable';
import { combineReducers } from 'redux-immutable';
import { handleActions } from 'redux-actions';

const initialNameState = List();
const initialQuestionsState = List();

const name = handleActions({}, initialNameState);
const questions = handleActions({}, initialQuestionsState);

export const initialSurveyState = Map({
  name: initialNameState,
  questions: initialQuestionsState
});

export const survey = handleActions(
  combineReducers({
    name,
    questions
  }),
  initialSurveyState
);
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-08-24 00:28:35

handleAction实际上创建了一个reducer。直接使用combineReducer应该可以解决这个问题。

代码语言:javascript
复制
import React, { Component } from 'react';
import { render } from 'react-dom';
import { createStore, combineReducers } from 'redux';
import { connect, Provider } from 'react-redux';
import { Map, List } from 'immutable';
import { combineReducers } from 'redux-immutable';
import { handleActions, createAction, combineActions } from 'redux-actions';

const initialNameState = List();
const initialQuestionsState = List();

const name = handleActions({}, initialNameState);
const questions = handleActions({}, initialQuestionsState);

export const survey = combineReducers({name, questions});

const store = createStore(survey);
票数 1
EN

Stack Overflow用户

发布于 2019-08-24 01:46:22

试试这个,然后告诉我它是否有效。

代码语言:javascript
复制
import { createStore, combineReducers } from 'redux';

const initialNameState = List();
const initialQuestionsState = List();

const name = handleActions({}, initialNameState);
const questions = handleActions({}, initialQuestionsState);

 const initialSurveyState = Map({
  name: initialNameState,
  questions: initialQuestionsState
});
    export const rootReducer=combineReducers({
    name,
    questions
  })

  const store=createStore(rootReducer)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57628554

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档