首页 > 其他分享 >React—02—描述UI

React—02—描述UI

时间:2023-08-08 11:14:12浏览次数:38  
标签:02 调用 Guest 两次 React UI 组件 函数

不要在渲染dom的时候修改数据,否则可能会触发重新渲染。

 

 

 

React 提供了 “严格模式”,在严格模式下开发时,它将会调用每个组件函数两次。通过重复调用组件函数,严格模式有助于找到违反这些规则的组件。

我们注意到,原始示例显示的是 “Guest #2”、“Guest #4” 和 “Guest #6”,而不是 “Guest #1”、“Guest #2” 和 “Guest #3”。原来的函数并不纯粹,因此调用它两次就出现了问题。但对于修复后的纯函数版本,即使调用该函数两次也能得到正确结果。纯函数仅仅执行计算,因此调用它们两次不会改变任何东西 — 就像两次调用 double(2) 并不会改变返回值,两次求解 y = 2x 不会改变 y 的值一样。相同的输入,总是返回相同的输出。

严格模式在生产环境下不生效,因此它不会降低应用程序的速度。如需引入严格模式,你可以用 <React.StrictMode> 包裹根组件。一些框架会默认这样做。

 

 

纯函数:

1.纯函数不会改变函数作用域外的变量、或在函数调用前创建的对象,或者修改dom等;

2.输入相同,则输出相同。给定相同的输入,纯函数应总是返回相同的结果。

 

如果你用尽一切办法,仍无法为副作用找到合适的事件处理程序,你还可以调用组件中的 useEffect 方法将其附加到返回的 JSX 中。这会告诉 React 在渲染结束后执行它。然而,这种方法应该是你最后的手段。

标签:02,调用,Guest,两次,React,UI,组件,函数
From: https://www.cnblogs.com/EricShen/p/17606570.html

相关文章

  • ASP.NET+EASYUI 换肤代码
    ​​编辑​......
  • React Hook 的闭包陷阱
    参考文章1.从reacthooks“闭包陷阱”切入,浅谈reacthooks2.一文讲透ReactHooks闭包陷阱 HooksHooks是react自16.8引入的新特性,使得开发者在摆脱class定义组件的同时,也能够进行状态管理。这样,react组件完全进入函数式(FP)编程范式。既然进入了函数式编程的......
  • 云原生周刊:KubeCon China 2023 详细议程公布 | 2023.8.7
    开源项目推荐SpiderpoolSpiderpool是一个Kubernetes底层网络解决方案。它提供丰富的IPAM功能和CNI集成能力,为开源社区的CNI项目提供支持,允许多个CNI有效协作。它能让底层CNI在裸机、虚拟机和任何公共云等环境中完美运行。PreevyPreevy是一款功能强大的命令行界......
  • VINKA/永嘉微电防干扰/抗噪2键/2通道/2路触摸触控芯片VK36N2D/VK3602XS/KA适用于玩具,
     概述      VK3602XS具有2个触摸按键,可用来检测外部触摸按键上人手的触摸动作。该芯片具有较高的集成度,仅需极少的外部组件便可实现触摸按键的检测。提供了2路锁存输出功能,可通过IO脚选择输出电平。芯片内部采用特殊的集成电路,具有高电源电压抑制比,可减少按键检测错误......
  • Mac版PDF编辑器-Acrobat Pro DC 2023
    AcrobatProDC2023(pdf编辑器)是一款能让用户轻松创建和编辑多种pdf格式的实用工具,并且能够同时使用各种方法编辑大量pdf文件。AcrobatProDC是Mac上运行速度最快、处理能力最强、功能最丰富的工具之一。AcrobatProDC包括强大的图像编辑工具,可让您轻松编辑图片和视频,而......
  • AutoCAD2024软件Mac中文版最新功能介绍支持M1/2
    AutoCAD2024软件的最新功能,包括行业特定的工具集、新的自动化以及跨设备和Autodesk产品的无缝连接。AutodeskAutoCAD不仅提供出色的绘图功能,而且提供了对工程工具使用方法及工作流程进行全面优化的方式。所有这一切都使用户能够轻松地创建工程应用程序,从而帮助他们提高工作效......
  • Kendo UI for jQuery,一个现代的jQuery UI组件!
    KendoUIforjQuery是什么?KendoUIforjQuery是完整的jQueryUI组件库,可快速构建出色的高性能响应式Web应用程序。KendoUIforjQuery提供在短时间内构建现代Web应用程序所需要的工具,从多个UI组件中选择,并轻松地将它们组合起来,创建出酷炫响应式的应用程序,同时将开发时间加快了......
  • 安装unity2022后启动工程提示“Unity is running as administrator.”
    问题背景:如题,最近项目更新到unity2022.3.6f1版本,在部分机器发现会不停提示“Unityisrunningasadministrator.”解决方案:同网上大多数方案雷同,采用调整uac安全级别来避免。1.搜索栏直接搜控制面板,或者win+r键入control,打开控制面板界面;2.选中“系统和安全”后,点击“更改用......
  • 【2023-08-06】连岳摘抄
    23:59有德此有人,有人此有土,有土此有财,有财此有用。德者本也,财者末也。                                                 ——《大学》凡事要有度。最好的度就是中国......
  • 2023.8.8
    P4310绝世好题首先可以想到的90pts做法是最长上升子序列dp,然后就考虑一下优化。这个做法要进行的转移过多,我们考虑怎么减少转移次数。由&运算我们可以发现,能转移到当前数的\(a[j]\),必然和当前数\(a[i]\)至少有一个二进制数位上同时为1。因此我们就可以定义\(bit[i]\)......