React Redux state.set不刷新我的组件

时间:2017-07-15 23:18:14

标签: reactjs redux state immutability

我在reducer中使用了一个不可变状态,最初我调度'REQUESTLOGINDATASUCCEEDED'事件调用state.set()它正在刷新我的组件,然后我想更新相同的状态变量我调度“USERPREFERENCESUCCEEDED”并调用同样的state.set()我的组件现在没有刷新。 PFB代码。

import { fromJS } from 'immutable';

const initialState = fromJS({
  loginData : {}
});

function DataGridContainerReducer(state = initialState, action) {
  switch (action.type) {
    case 'REQUESTLOGINDATASUCCEEDED':
        return state.set('loginData', action.loginData);
    case 'USERPREFERENCESUCCEEDED':
        return updateUserPreference(state, action.userPreference);
    default:
      return state;
  }
}


function updateUserPreference(state, userPreference) {
    debugger;
    let loginData = state.get('loginData');
    let searchDataIndex = 0;
    loginData.userPreferences.splice(searchDataIndex, 1);
    loginData.userPreferences.push(userPreference);
    return state.set('loginData', loginData);
}

export default DataGridContainerReducer;

请检查并告诉我这里的问题。 提前谢谢。

0 个答案:

没有答案