response-redux <Provider>отсутствует динамически добавленное состояние редуктора - PullRequest
1 голос
/ 09 мая 2019

Я динамически добавляю удаление редукторов в состояние редукции и использую функцию реакции-редукса для отображения состояния в реквизит. Я делаю добавление / удаление редукторов, как показано на https://redux.js.org/recipes/code-splitting с использованием метода reducerManager.

в какой-то момент ниже код запускается

...
store.reducerManager.add(campaign.campaignId, UDP.getReducer()); 
console.log('reducer map', store.reducerManager.getReducerMap()); 
return (<UDP campaign={campaign}/>);
....

, который впоследствии монтирует UDP:

...
const mapStateToProps = (state, ownProps) => {
console.log('[stt]', state)
return({ 
    language:         state.appstate.language,
    currentViewData:  state.appstate.currentViewData,
    currentView:      state.appstate.currentView,
    connectedStampId: state.bluetooth.connectedStampId,
    isBTConnected:  state.bluetooth.isBTConnected,
    isActing:       state[ownProps.campaign.campaignId].isActing, 
})
}
export default connect(mapStateToProps,null,null) (UDP);

Проблема в том, что при запуске mapStateToProps

state[ownProps.campaign.campaignId] 

не определено, тогда как console.log ('карта редуктора' ... показывает, что он находится в состоянии. Однако состояние, переданное в mapStateToProps, не содержит его.

(также mapStateToProps запускается второй раз сразу после первого, затем состояние корректно)

Я не знаю, делаю ли я что-то не разрешенное (провайдером / response-redux) или делаю что-то не так.

...