我长时间使用redux和redux-thunk,我现在正在尝试这种简单的工作流程,但没有达到我的期望值
行动创造者=>
export const openguidelist = () => {
return dispatch => {
dispatch({ type: OPEN_GUIDE_LIST });
};
};
我的减速机=>
const INITIAL_STATE = {
guideopen: true
};
export default (state = INITIAL_STATE, action) => {
switch (action.type) {
case OPEN_GUIDE_LIST:
return { ...state, guideopen: true ? false : true };
default:
return state;
}
};
并触发了actioncreator我的组件onPress没错,顺便说一句,我正在寻找react-native-debugger,初始工作正在工作,将guideopen true更改为false我的期望,然后guideopen永远不会改变,总是返回false,我期望的是每次触发触发时都会更改值,但是redux不仅会第一次更改状态,而且什么也不会更改guideopen返回值始终相同(错误),我不明白为什么请解释一下我
最佳答案
true ? false : true
将始终计算为false
。
它应该是guideopen: !state.guideopen
。
另外,如果guideopen
是化简器中的唯一状态,则可以删除嵌套并将布尔值直接用作状态:
(state = false, action) {
...
case OPEN_GUIDE_LIST:
return !state;
关于javascript - React Native Redux不改变状态我不明白为什么,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50352026/