十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章主要介绍react生命周期有几个阶段,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
成都创新互联专注于新民企业网站建设,成都响应式网站建设,成都做商城网站。新民网站建设公司,为新民等地区提供建站服务。全流程按需网站开发,专业设计,全程项目跟踪,成都创新互联专业和态度为您提供的服务
React的生命周期一共分为初始化阶段,更新以及销毁阶段。初始化表示组件在DOM树进行第一次渲染,更新表示组件重新渲染的过程;销毁表示组件从DOM中删除的过程
React是一个用于构建用户界面的JavaScript库,它主要用于构建UI,它具有较高的性能而且代码逻辑非常简单。今天将要介绍的是React的生命周期,具有一定的参考作用,希望对大家有所帮助。
react生命周期分为三个阶段分别是:初始化阶段,更新阶段,销毁阶段。接下来在文章中将为大家详细介绍
初始化阶段:
即把组件第一次在DOM树中进行渲染
import React, { Component } from 'react'; class Test extends Component { constructor(props) { super(props); } }
初始化阶段也就是上述代码中类的构造方法一样,Test类继承了react Component基类,也就等同于继承了react的基类,这样才有了render(),即生命周期等方法才可以使用。
代码中super(props)主要是用来调用基类的构造方法constructor()的,同时也将父组件的props注入给子组件,让子组件读取。在这里需要注意的是组件中props只读不可变,而state是可变的。
构造函数constructor()是用来做一些组件的初始化工作,如定义this.state中的初始内容
更新阶段:
表示组件被重新渲染的过程
当props或者是state被修改时,就会触发组件的更新过程
componentWillReceiveProps(nextProps)
当父组件的render函数被调用时,在render函数里被渲染的子组件,都会经历更新的过程,无论父组件传给子组件的props有没有改变,都会触发componentWillReciveProps
注意this.setState触发的更新,不会调用上述的方法。如果this.setState的调用触发了上述的方法,则会导致死循环。只有当nextProps和this.props两者有变化的时候,才会调用this.setState来更新组件内部的state
shouldComponentUpdate(nextProps,nextState)
该方法决定了一个组件什么时候不需要渲染 ,如果使用的恰当则会提高性能
当返回true时则调用componentWillUpdate,render,componentDidUpdate,否则不会有后续的方法调用。
实际上,React做服务器端渲染的时候,基本上不会经历更新过程,因为服务端渲染,只需要产出HTML的字符串就好了,而初始化阶段就可以实现,所以一般情况下,服务器端是不会调用compentDidUpdate方法,如果调用了说明程序出错了,需要改进
销毁阶段:
表示组件从DOM中删除的过程
在销毁阶段只有一个生命周期方法:
componentWillUnmount
这个方法在组件被销毁前调用,主要执行一些清理工作,比如清除组件中使用的定时器,componentDidMount中手动创建的DOM元素等,以避免引起内存泄漏。
以上是“react生命周期有几个阶段”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!