繁体   English   中英

使用redux获取然后更改状态的问题

[英]Trouble with getting and then changing the state in react using redux

单击切换按钮时,我试图使用redux基本上更改应用程序的状态。 onClick方法似乎正在与显示onClick正常工作的日志语句一起使用。 我似乎无法获得状态,因此不允许我更改状态。

您能告诉我如何获取状态然后更改状态吗?

这是我的代码:

export default function (state=[], action) {
      switch(action.type) {
        case 'TOGGLE_EXPAND_CALENDAR_SECTION':
          console.log("case 'TOGGLE_EXPAND_CALENDAR_SECTION'");
          if (action.payload.moduleSizeCalendar == 'dashSection') {
           console.log("click worked if");
        return {
          ...state,
          moduleExpandImageCalendar: 'img/collapseBlue.png',
          moduleSizeSchools: 'hidden',
          moduleSizeCalendar: 'dashSectionFullScreen',
          moduleSizeStudent: 'hidden',
          moduleSizeTeacher: 'hidden',
          moduleSizeClasses: 'hidden',
          moduleSizeTasks: 'hidden',
          moduleSizePhotos: 'hidden'
        }
      } else {
           console.log("click worked else");
        return {
          ...state,
          moduleExpandImageCalendar: 'img/enlargeBlue.png',
          moduleSizeSchools: 'dashSection',
          moduleSizeCalendar: 'dashSection',
          moduleSizeStudent: 'dashSection',
          moduleSizeTeacher: 'dashSection',
          moduleSizeClasses: 'dashSection',
          moduleSizeTasks: 'dashSection',
          moduleSizePhotos: 'topLine'
        }
      }
  default:
  return {
      ...state
    }
  }
}

非常感谢!

您声明的默认值为空数组,但您将其视为化简器中的对象。 不知道这是否是您要面对的问题,但您应该解决该问题。

我强烈建议您使用redux开发工具,这些工具将真正帮助您了解您的操作和减速器正在执行的操作以及当前的实际状态。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM