mapStateToProps对道具没有影响

时间:2017-12-11 11:38:22

标签: javascript reactjs redux react-redux

在我的react-redux应用程序中,mapStateToProps显然对道具没有影响。我这样做:

this.props.dispatch(simClear());
console.log(this.props);

这是行动创造者:

export function simClear() {
  return {type: 'SIM_CLEAR'};
}

......和减速器:

registerReducer('sim', function(state=initialState, action) {
  switch (action.type) {
    case 'SIM_CLEAR': return {...state, progs: []};
    [...]
    default: return state;
  }
});

[...]

const registerReducer = function(id, reducer) {
    reducers[id] = reducer;
}

const getCombinedReducers = function() {
    return combineReducers(reducers);
}

mapStateToProps看起来像这样:

const mapStateToProps = (state) => {  
  return {
    progs: state.sim.progs,
    [...]
  };
}

通过测试输出,我验证了创建和调度操作,调用reducer并返回更新状态,然后使用更新状态调用mapStateToProps并返回预期对象({{1}是一个空数组)。这一切看起来都不错。

然后,控制台输出道具(旧值为progs)。为什么???

我自己的代码中没有异步,progs中的测试输出在mapStateToProps之前打印。

0 个答案:

没有答案