当前位置: 首页 > news >正文

react17中使用setState导致了死循环

在使用setState时发生死循环的错误,可能的原因是在这三个地方使用了setState:

  • componentDidUpdate;
  • componentWillUpdate;
  • render。

为什么会这样?

       每次渲染页面的时候就会调用render,render里面是setState,就要执行setState,而每次执行setState就要重新渲染页面,要渲染调用render,render里执行setState,又重新渲染调用render—setState–render—setState…就这样一直发生死循环。

       只需将 setState() 调用移到 render() 函数之外即可。

       如果在组件挂载后必须初始化状态(也许是从API端点提取数据),请在 componentDidMount() 中进行。

       如果可以在组件挂载之前初始化状态,也可以使用构造函数来完成。

参考内容:react循环setstate_新手React开发人员容易做错的5件事

http://www.lryc.cn/news/337667.html

相关文章:

  • 2024年P气瓶充装证模拟考试题库及P气瓶充装理论考试试题
  • Python学习笔记(一)
  • 记一次http访问超时服务器端调试
  • C/C++内存泄漏及检测
  • 跟TED演讲学英文:Why AI will spark exponential economic growth by Cathie Wood
  • 常用组合逻辑电路模块(4):数值比较器
  • 实时时钟模块RX8901CE具有数字温度补偿功能,助力工业设备实现精准控制
  • Acrobat Pro DC 2023 for mac直装激活版 pdf编辑处理工具
  • 3D应用模型信创系统实时渲染有什么要求?
  • Flutter之TabBar篇
  • VRRP(虚拟路由冗余协议)详解
  • 【数据结构】04串
  • LAMMPS如何识别多孔结构的孔隙及其大小
  • JavaScript ECMAScript标准的与时俱进:从ES6至ES14的革新之路与关键技术特性剖析
  • 竞赛课第六周(树状数组的应用)
  • SpringCloud Alibaba Sentinel 实现熔断功能
  • 开源免费AI引擎:智能合同审查技术的应用与优势
  • 易舟云凭证保存查看的3种方式
  • Node.js 开发技巧
  • 【LeetCode】二叉树类题目详解
  • Lua语法(六)——面相对象编程
  • CSS-浮动文字环绕布局、隐藏属性display、overflow、三角形制作、鼠标样式
  • 创建个人百度百科需要什么条件?
  • VR紧急情况模拟|V R体验中心加盟|元宇宙文旅
  • 【Django】必须登陆才能访问功能实现
  • wps使用Latex编辑公式没有Latex formula
  • 动态指定easyui的datagrid的url
  • 数据可视化的3D问题
  • 使用yolov8实现自动车牌识别(教程+代码)
  • RabbitMQ的介绍