shouldComponentUpdate有什么作用?

news/2024/7/15 17:57:36 标签: 前端, javascript, react.js, 搜索引擎

触发时机

当props或state发生变化时,shouldComponentUpdate() 会在渲染执行之前被调用。

作用

根据shouldComponentUpdate()的返回值,判断react组件的输出是否受当前stateprops更改影响。默认行为是state每次发生变化组件都会重新渲染。

shouldComponentUpdate()接收两个参数:一个是nextProps,第二个是nextState,一个跟新props,另一个更新state,当props或state发生变化时**shouldComponentUpdate()**会在渲染执行之前被调用。如果返回的是true就重新渲染,返回false就不做任何操作,使性能得到优化。

使用shouldComponentUpdate性能优化

React中props,state值的变化,会导致组件重新渲染。使用shouldComponentUpdate就是为了减少render不必要的渲染。

当将旧的state的值原封不动赋值给新的state(即不改变state的值,但是调用了setState)和 无数据交换的父组件的重新渲染都会导致组件重新渲染,这时候都可以通过shouldComponentUpdate来优化。

React提供了生命周期函数shouldComponentUpdate(),根据它的返回值(true | false),判断 React 组件的输出是否受当前 state 或 props 更改的影响。默认行为是 state 每次发生变化组件都会重新渲染 。


http://www.niftyadmin.cn/n/4981505.html

相关文章

C++day6(多态实现动物园的讲解员和动物表演的相关介绍、用函数模板实现不同数据类型的交换功能)

1.比喻:动物园的讲解员和动物表演 想象一下你去了一家动物园,看到了许多不同种类的动物,如狮子、大象、猴子等。现在,动物园里有一位讲解员,他会为每种动物表演做简单的介绍。 在这个场景中,我们可以将动…

【C51基础实验 点亮一颗LED】

51单片机项目基础篇 点亮一颗LED1、认识头文件1.1、头文件的书写格式分类1.2、头文件存放的内容 2、硬件电路设计3、软件设计4、编译结果5、结束语 点亮一颗LED 前言: 了解了前面篇章的内容,工程模板就不多赘述了,这篇就开始写51 单片机的第…

linux:docker采用volume时,如果是代码,volume里的内容改变时代码不会生效

问题: 如描述 解决办法: 必须手动重启一次容器 docker restart xxx

【Hadoop】Hadoop入门概念简介

🍁 博主 "开着拖拉机回家"带您 Go to New World.✨🍁 🦄 个人主页——🎐开着拖拉机回家_Linux,Java基础学习,大数据运维-CSDN博客 🎐✨🍁 🪁🍁 希望本文能够给您带来一定的…

想系列服务迁移专有云效实操

想系列服务迁移专有云效实操 1注册应用 查看jenkins脚本是否需要修改代码编译路径 gemdale_jenkins/maven3-service/k8s-image/maven3-service-deploy.sh Jenkins上的打包路径 service_tgt_path s e r v i c e w s / t a r g e t / service_ws/target/ servicew​s/target/ser…

YOLOv5屏蔽区域训练(选择区域训练)

YOLOv5屏蔽区域/选择区域 训练(重点区域训练) 前期准备labelme选择mask区域 代码改动 前期准备 思路就是通过使用一个mask掩膜,对我们想要屏蔽或者选择的区域进行定向遮挡或者定向选择,在训练的时候v5需要加载数据即图片和标注信…

天地一张网,高精度定位导航的“大国重器”

新的认知,源自不断地求索。 1982年,邓中亮刚刚走进大学校门,选择了当时的热门专业机械制造,在毕业后从事汽车制造工作的过程,认识到国内外制造水平的差距,诞生了对新的专业知识的渴望。 工作几年之后&#…

JavaScript 执行上下文和作用域链

执行上下文 执行上下文决定了变量和函数可以访问哪些数据。 一个执行上下文就对应一个仅后台可访问的变量对象,其中保存有该上下文的局部变量、参数和函数声明。 最外层的上下文称为全局上下文。宿主环境不同,全局上下文的关联对象就不同。在浏览器中…