我在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;
请检查并告诉我这里的问题。 提前谢谢。