Console.log 在 React.js 的构造函数和渲染函数中两次打印值

Console.log is printing values twice in constructor and render function in React.js

为什么 console.log 在构造函数和渲染函数中打印两次值?

这里是:

class App extends React.Component {
  constructor(props) {
    console.log('Constructor');
    super(props)

    this.state = {
      counter: 0
    }
  }
render() {
    console.log('render');
    return (
      <div style={{ fontSize: '45px', fontWeight: 'bold' }}>
        Counter: {this.state.counter}
      </div>
    )
  }
}

这是由于 React.StrictModeReact.StrictMode 是一个包装器,可帮助为异步呈现准备应用程序。

您可以在此处阅读更多相关信息! https://mariosfakiolas.com/blog/my-react-components-render-twice-and-drive-me-crazy/