2017-09-25 79 views
0

可以在其默认块中使用reducer调用子缩减器吗?调用子缩减器在父缩减器的默认块中

function aReducer(state = {}, action) { 
    switch(action.type) { 
    case XYZ: 
     ... // know what to do 
    default: 
     // don't know this action, let's delegate to the children 
     return { 
     sub1: subReducer1(state.sub1, action), 
     sub2: subReducer2(state.sub2, action) 
     } 
    } 
} 

回答

0

您可以将所有reducer放在一个公共文件夹中,并且可以将单独的reducer组合成一个如下面的代码。

import { combineReducers } from 'redux' 
import Reducer1 from './Reducer1.js' 
import Reducer2 from './Reducer2.js' 
export default combineReducers({ Reducer1, Reducer2,... }) 

并使用以下代码将其用作单个缩减器。

import reducers from '../../reducers'(reducer's root folder name/path) 
let store = createStore(reducers);