react组件执行两次问题

无心中发现react渲染执行两次,开始觉得是代码写错了,后来去网上查找发现原来并非一个bug。
React 在 开发环境下会刻意执行两次渲染,以防止组件内有什么 side effect 引发 bug,提早预防。
这里官方github上有做出解释:
image.pngreact

从代码中来看git

let a = 0
class App extends React.Component {

  render() {
    a = a + 1
    console.log(`运行${a}次`)
    return (
      <div></div>
    )
  }
}

控制台显示结果运行了两次。
image.pnggithub

相关文章
相关标签/搜索