最近做小项目遇到自己写的组件渲染了两次,找半天终于找到解决方法了。
可以去看看官网说明:
https://zh-hans.reactjs.org/docs/strict-mode.html#detecting-unexpected-side-effects
这个原因是 react严格模式导致的
react严格模式是为了在我们开发过程中帮助我们发现小bug,通过故意重复调生命周期函数让我们发现问题。
注意:这仅适用于开发模式。生产模式下生命周期不会被调用两次。
重点
在react渲染组件中 , 初始化的index.js
文件里,存在一个<React.StrictMode>
标签,
这个是react的一个用来突出显示应用程序中潜在问题的工具(严格模式)
所以最简单的解决方法就是只需要把这个<React.StrictMode>
标签去掉就好啦!