分享更有价值
被信任是一种快乐

react组件mount好几次如何解决

文章页正文上

这篇文章主要讲解了“react组件mount好几次如何解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“react组件mount好几次如何解决”吧! react组件mount好几次的解决办法:1、找到并打开“index.tsx”或者“index.js”文件;2、找到“root.render();”代码;3、将“React.StrictMode”高阶组件包围去掉即可。React 18 componentDidMount重复执行两次的解决方案问题这两天用create-react-app创建了一个新的React项目,在项目运行的时候,似乎有意想不到的事情发生,组件的componentDidMount方法被触发了两次。而更早的项目,同样采用create-react-app创建的一个项目,却没有这个问题,免费云主机、域名当时真是一脸懵逼。。。排查首先想到的是前几天将本地的create-react-app升级过,问题是不是create-react-app升级导致的,转而一想应该没关系。后来去仔细比较了两个项目的package.json文件,发现之前的项目,React用的是17.x版本;而问题项目用的却是18.2.0版本的React。后来去React官方Github,果然找到关于18版本的一些Featur

StricterStrictMode:Inthefuture,Reactwillprovideafeaturethatletscomponentspreservestatebetweenunmounts.Toprepareforit,React18introducesanewdevelopment-onlychecktoStrictMode.Reactwillautomaticallyunmountandremounteverycomponent,wheneveracomponentmountsforthefirsttime,restoringthepreviousstateonthesecondmount.Ifthisbreaksyourapp,considerremovingStrictModeuntilyoucanfixthecomponentstoberesilienttoremountingwithexistingstate.

大意如下:在未来,React会提供一个新特性,该特性会使得组件取消加载后能维持状态。React 18会再Strict Mode中引入一个新的开发模式。React将会对每一个组件自动取消加载并重新加载。如果其干扰了你的应用,移除Strict Mode就能够修复组件重新加载的问题。解决方案知道了原因之后,解决方案也很简单,将index.tsx或者index.js文件里的React.StrictMode高阶组件包围去掉即可。修改前:

root.render(



);

修改后:

root.render(
//去除React.StrictMode
//

//
);

感谢各位的阅读,以上就是“react组件mount好几次如何解决”的内容了,经过本文的学习后,相信大家对react组件mount好几次如何解决这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是云技术,小编将为大家推送更多相关知识点的文章,欢迎关注!

相关推荐: 怎么把html变成vue代码

htmlvue VueHTMLHTMLVueHTMLVueVue Vue Vue Vue Vue HTMLVue HTMLVue HTML HelloWorld! Item1 Item2 Item3 Link Vue HelloWorld! {{item}} …

文章页内容下
赞(0) 打赏
版权声明:本站采用知识共享、学习交流,不允许用于商业用途;文章由发布者自行承担一切责任,与本站无关。
文章页正文下
文章页评论上

云服务器、web空间可免费试用

宝塔面板主机、支持php,mysql等,SSL部署;安全高速企业专供99.999%稳定,另有高防主机、不限制内容等类型,具体可咨询QQ:360163164,Tel同微信:18905205712

主机选购导航云服务器试用

登录

找回密码

注册