我實現與終極版的反應,我得到了相同名稱的嵌套狀態(見圖片)具有相同名稱
這裏嵌套狀態是我的減速器:
function helps(state = {
isFetching: false,
items: []
}, action) {
switch (action.type) {
case types.HELPS_FEED_REQUEST:
return Object.assign({}, state, {
isFetching: true
});
case types.HELPS_FEED_SUCCESS:
return Object.assign({}, state, {
isFetching: false,
items: [
...state.items,
...action.items
]
});
default:
return state;
}
}
const rootReducer = combineReducers({
helps
});
export default rootReducer;
index.js減速器:
import {combineReducers} from 'redux';
import help from './helpReducer';
import helps from './helpsReducer';
const rootReducer = combineReducers({
help,
helps
});
export default rootReducer;
我的問題是:爲什麼我不只有o ñ「幫助」狀態與isFetching和項目?有什麼明顯的我失蹤了?
編輯:
顯然,這是因爲我使用的減壓器結合。所以,如果我改變函數的名稱,例如helps_feed,國家將:
helps
-- helps_feed
爲什麼combineReducers使嵌套狀態?
configureStore.js
import { createStore, applyMiddleware, compose } from 'redux';
import rootReducer from '../reducers';
import createSagaMiddleware, {END} from 'redux-saga';
import helpSagas from '../sagas/helpSaga';
export default function configureStore(initialState) {
const rootSagas = [
helpSagas
];
const sagaMiddleWare = createSagaMiddleware();
const store = createStore(
rootReducer,
initialState,
compose(
applyMiddleware(sagaMiddleWare),
window.devToolsExtension ? window.devToolsExtension() : f => f
));
store.runSaga = sagaMiddleWare.run(...rootSagas);
store.close =() => store.dispatch(END);
return store;
}
沒有足夠的信息來幫助你,你可以顯示在其中創建該文件的商店? – QoP
@QoP我更新了我的問題。 –