学习React(四)

学习React(四)

componentWillMount(被放弃使用)

复制代码
组件被挂载(渲染)到页面之前,自动执行,此时render函数,还没有执行,无法在这一步操作真实DOM

render

复制代码
挂载(渲染)页面,把虚拟DOM转换成真实DOM,即定义的变量以及jsx被执行

componentDidMount

复制代码
组件被挂载(渲染)到页面之后,自动执行,此时render函数,已经执行完成,可以在这一步进行DOM节点的操作

shouldComponentUpdate(nextProps,nextState)

复制代码
组件被更新之前(即每次改变state,props的值都会执行该函数),自动执行,它会返回true或者false,返回true就继续执行componentWillUpdate,否则就不执行,
可以通过nextProps.[属性值]与当前this.props.[属性值]比较是否一样,来选择return true还是return false,来执行组件中的render函数

componentWillUpdate(被放弃使用)

复制代码
执行在shouldComponentUpdate之后,shouldComponentUpdate返回值为true,才执行componentWillUpdate,接着继续执行render函数重新渲染页面,当页面渲染完成后执行componentDidUpdate

componentDidUpdate

复制代码
组件更新完成之后,自动执行

componentWillReceiveProps(被放弃使用)

复制代码
该函数要执行的条件:
1.首先它要从父组件接受参数;
2.这个组件要已经在父组件中渲染过一次,才会执行,如果这个组件是第一次存在于父组件中,就不会执行

componentWillUnmount

复制代码
组件被删除之前,自动执行

react运行的生命周期

复制代码
1.Initialization(初始化):初始化页面在构造函数中获取props值,以及state值的设置,页面创建过程中只执行一次

2.Mounting(挂载):设置好props和state的值之后,开始挂载(渲染)页面,页面创建过程中只执行一次

3.Updation(更新):当页面中state,props的值开始改变时,执行这里的函数

4.Unmounting(销毁):页面卸载时,自动执行
相关推荐
黛色正浓4 分钟前
【React基础】篇章3:性能优化相关API&&编写类组件Class API&&zustand状态管理
javascript·react.js·ecmascript
lkbhua莱克瓦245 分钟前
项目知识——React 的介绍
react.js·知识
2401_860494707 分钟前
在React Native鸿蒙跨平台开发中实现一个桶排序算法,如何使用任何排序算法对每个桶中的元素进行排序,再将所有桶中的元素合并成一个有序数组
javascript·react native·react.js·ecmascript·排序算法·harmonyos
小明记账簿18 分钟前
前端读取与导出XLSX文件实战指南(React+Ant Design)
前端·react.js·前端框架
2401_8603195239 分钟前
【精通篇】打造React Native鸿蒙跨平台开发高级复合组件库开发系列:Circle 环形进度条(圆环形的进度条组件)
react native·react.js·harmonyos
赵财猫._.1 小时前
React Native鸿蒙开发实战(一):环境搭建与第一个应用
react native·react.js·华为·harmonyos
2401_860494701 小时前
在React Native鸿蒙跨平台开发中实现一个计数排序算法,如何使用一个额外的数组来统计每个值的出现次数,然后根据这个统计结果来重构原数组的顺序
javascript·react native·react.js·重构·ecmascript·排序算法
2401_860494701 小时前
在React Native鸿蒙跨平台开发中实现一个基数排序算法,如何进行找到最大数:遍历数组找到最大值呢?
javascript·算法·react native·react.js·排序算法·harmonyos
2401_8603195211 小时前
在React Native鸿蒙跨平台开发中实现 二叉搜索树,如何实现一些基本的遍历方法,如中序遍历,中序遍历按顺序访问左子树、根节点、右子树
react native·react.js·harmonyos
小p17 小时前
react学习13:几个简单的自定义hooks
react.js