Javascript 如何在React+Typescript中将状态更新为以前的状态

Javascript 如何在React+Typescript中将状态更新为以前的状态,javascript,reactjs,typescript,ecmascript-6,setstate,Javascript,Reactjs,Typescript,Ecmascript 6,Setstate,我想将状态设置为以前的值。我有一个复选框列表,根据它的选择,单击“应用”,表中的列将显示/隐藏。我能够实现这个功能。但单击“取消”,我无法将其设置为以前的状态 代码沙盒: 单击“取消”,复选框应设置为先前状态 单击是使用SelectComponent.tsx中的函数处理的,目标是将optionsArr重置为其原始值: cancelSelection = (event: any) => { this.setState({ showList: false }); this.setSta

我想将状态设置为以前的值。我有一个复选框列表,根据它的选择,单击“应用”,表中的列将显示/隐藏。我能够实现这个功能。但单击“取消”,我无法将其设置为以前的状态

代码沙盒:

单击“取消”,复选框应设置为先前状态

单击是使用SelectComponent.tsx中的函数处理的,目标是将optionsArr重置为其原始值:

cancelSelection = (event: any) => {
  this.setState({ showList: false });
  this.setState((prevState: any) => ({
    // Isn't working
    optionsArr: prevState.optionsArr
  }));
};
获取的参数是应用更改时的状态。将状态设置为该值不会更改任何内容

您需要单独跟踪以前的状态。例如,作为状态中的独立项、实例变量或props。例如,见:


我投票决定关闭,因为它依赖于第三方内容代码沙盒,可能会被更改/删除。如果发生这种情况,这个问题将毫无意义,从而消除对未来用户的任何有用性。这还意味着,在你的问题中,与代码相关的搜索词最少,从而降低了搜索引擎为你的问题编制索引的能力。请使用SO提供的工具展示您的代码,考虑并提供指导。