React生命周期函数

React组件的生命周期详解
React组件的生命周期包括构造函数、componentWillMount、componentDidMount、render、shouldComponentUpdate等阶段,涉及组件的创建、渲染、更新和销毁。在componentDidMount中通常进行网络请求,shouldComponentUpdate用于优化性能,决定是否需要重新渲染。最后,componentWillUnmount用于清理资源。

React里的生命周期:即一个组件从创建到销毁的过程,在这个过程中,React在一些重要的节点(时机)抛出了一些函数,我们可以选择合适的时机去在对应的生

命周期函数里书写对应的逻辑代码;

 组件的生命周期函数:

 1.constructor组件的构造函数,会在组件实例化时自动触发,在该函数里做一些代码的初始化工作,例如:初始化state,修改函数this的指向,创建ref对象,props属性获取等等;该生命周期函数,只能说明组件创建完毕,但是此时还未渲染jsx结构;(虚拟DOM)

 

2.componentWillMount 方法,组件初始化时调用,整个生命周期只执行一次,以后组件更新再也不会触发;此时,jsx结构依然没有渲染;

3.componentDidMount() 组件挂载完成的方法,组件已经挂载完毕,显示到了页

面上,我们一般在此方法中,进行网络请求;

4.render 是class组件中唯一必须实现的一个方法,也是整个生命周期中,最重要

的一个方法;

创建虚拟DOM的过程,进行diff算法,更新DOM都是此处执行,此时没有办法改变

state的状态值了

5.componentWillReceiveProps

新版本中 UNSAFE_componentWillReceiveProps

6.shouldComponentUpdate 生命周期方法

该方法会在数据(接收的props属性或者该组件state数据源)更新之前进行询问,如果返回true,则正常更新(数据更新,组件重新render渲染),如果返回false,则不重新更新使用过该数据的jsx结构,也就是不重新渲染;默认如果不重新该生命周期方法,返回值是true,允许更新;该生命周期函数,有两个参数,分别接收新的

props和新的state,可以将新的state中的值和之前state中的值作比较,处理是否允许更新,props也是如此;

 7.componentWillUpdate()组件将要重新渲染

UNSAFE_componentWillUpdate

 

8.componentDidUpdate()

 

9.componentWillUnmount 组将将要被销毁的方法,该事件会在组件将要被销毁时触发;

该生命周期函数的作用:我们可以在该函数中做一些清理任务,例如:清除定时器,移除监听,或者数据的保存,以及数据内存的销毁;

React中组件的生命周期可以分为三个阶段:

1.初始化阶段

constructor()

UNSAFE_componentWillMount()

render()

componentDidMount()

2.更新阶段

shouldComponentUpdate()

UNSAFE_componentWillUpdate()

render()

componentDidUpdate()

UNSAFE_componentWillReceiveProps()

3.销毁阶段

componentWillUnmount()

比较重要的几个生命周期函数:

1.constructor()

2.render()

3.componentDidMount()

4.componentWillUnmount() - 内存优化处理

React中的生命周期函数指的是在组件的生命周期中会被自动调用的一些特定函数。以下是React的常见生命周期函数: 1. constructor(props): 组件创建时调用的函数,用于初始化状态和绑定方法。 2. static getDerivedStateFromProps(props, state): 组件创建和更新时调用的静态函数,在render之前调用。它接收props和state作为参数,返回一个对象来更新state,或者返回null。 3. render(): 渲染函数,用于返回组件的JSX结构。 4. componentDidMount(): 组件挂载后调用的函数,通常用于进行DOM操作、网络请求等副作用操作。 5. shouldComponentUpdate(nextProps, nextState): 组件更新前调用的函数,用于判断是否需要重新渲染组件。默认情况下,每次state或props更新都会重新渲染组件。 6. getSnapshotBeforeUpdate(prevProps, prevState): 组件更新前调用的函数,在render之后、组件DOM更新之前调用。它接收prevProps和prevState作为参数,返回一个值,将作为第三个参数传递给componentDidUpdate()函数。 7. componentDidUpdate(prevProps, prevState, snapshot): 组件更新后调用的函数,通常用于进行DOM操作、网络请求等副作用操作。 8. componentWillUnmount(): 组件卸载前调用的函数,用于清理定时器、取消网络请求等操作。 这些生命周期函数在组件的不同阶段会被自动调用,开发者可以在相应的生命周期函数中执行特定的操作,以实现组件的逻辑和交互效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值