繁体   English   中英

何时根据 React/Typescript 中 useState 钩子中的先前状态更新状态

[英]When to update state based on previous state in useState hook in React/Typescript

我已经看到了一些关于如何根据先前状态更新状态的示例,但是我没有看到关于何时根据先前状态更新状态的太多解释,大多数示例使用反例,但是如果我正在设置一个对象呢?在状态中,这是否仍基于先前的值,还是我可以只更新状态。 例如

const exampleData = [
    {
       text: 'Example name',
       value: 1
    },
    {
       text: 'Example name 2',
       value: 2
    }
]

  const [asset, setAsset] = useState(exampleData[0]);

  const handleClick = (event) => {
      setAsset(event.target.value) 
  }

因此,在示例中,我正在更新 handleClick 函数中的状态,但是我是否需要根据以前的值更新它?

如果要访问previous state ,可在setState操作中使用

const [state, setState] = useState(false);

const handleClick = () => {
    setState(prev => !prev); // true
    setState(prev => !prev); // false
}

注意: setStateasync操作

暂无
暂无

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

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