`this.setState`中的prevstate - 副本还是引用?

JSi*_*ilv 7 javascript reactjs

我一直试图弄清楚这一点,并没有得到正确的答案.

在以下代码中:

this.setState(prevState => counter: prevState.counter + 1);
Run Code Online (Sandbox Code Playgroud)

prevState对当前状态的引用?或者它是它的副本?变异是好还是应该避免变异?

Chr*_*kes 7

从文件......

prevState是对先前状态的引用.它不应该直接变异.相反,应该通过基于来自prevState和props的输入构建新对象来表示更改.

https://facebook.github.io/react/docs/react-component.html

所以为了回答你的问题,prevState是最后一次突变发生之前的状态.

  • 太好了,谢谢你的回答。我正在查看文档中的状态和生命周期页面,而不是 react 组件页面。哦 (2认同)