美文网首页
React常用生命周期

React常用生命周期

作者: 走的是前方的路_端的是生活的苦 | 来源:发表于2021-04-15 10:45 被阅读0次

一、生命周期调用顺序

1. 挂载

  • constructor()
  • render()
  • componentDidMount()

2. 更新

  • render()
  • componentDidUpdate()

3. 卸载

  • componentWillUnmount()
image.png

二、详解生命周期函数

1. construcor()

  • 挂载之前调用,子类调用是须在其他语句之前调用super(props)

  • 构造函数的调用情况:

  • 需要通过this.state复制对象来初始化内部state

  • 为事件函数绑定实例

  • 注意:

  • 在构造函数中不得使用setState()方法复制

    constructor(props){
        super(props)
        // 不要在这里调用 this.setState()
        this.state = { counter: 0 };
        this.handleClick = this.handleClick.bind(this);
    }
  • 避免将 props 的值复制给 state!

2. componentDidMount()

  • 组件挂载后调用,依赖DOM节点的初始化应该在此函数中执行,网络请求大多也在次函数中,进行数据初始化
  • 次函数可调用setState()方法
  • 只要进入页面就会调用该函数
  • 适合添加订阅,但不要忘记在componentWillUnmount取消

3. render()

  • render()方法是class组件唯一必须实现的方法

  • 调用render时,检测this.props和this.state的变化并返回:

  • React元素

  • 数组或fragment

  • protals

  • 字符转或数值类型

  • 布尔类型或null

  • render()不与浏览器直接交互

4. componentDidUpdate()

  • 只要页面的state或者model中的state中定义的变量值发生改变,这个方法就会执行,首次渲染不执行,首次渲染不执行
  • 例如:在componentDidUpdata()中对originLength的监听从而达到上传或删除的操作
image.png
  • 当组件更新后可在此函数中进行DOM操作或网络请求
    componentDidUpdate(prevProps){
        //典型用法,判断props
        if(this.props.userId !== prevProps.userId){
            this.fetchData(this.props.userId)
        }
    }
  • 可直接调用setState() ,但必须包裹在条件语句中,否则会造成死循环

5. componentWillUnmount()

  • 此函数会在组件卸载及销毁前调用,可执行必要的清理操作,例如定时器,取消请求,清除订阅
  • 此函数中不应再调用setState(),因为该组件永远不再重新渲染了

相关文章

  • react项目总结

    一.React常用知识 1.react生命周期的运用 2.react-router/react-router-do...

  • React基础

    学习记录 常用的生命周期方法 生命周期图谱https://projects.wojtekmaj.pl/react-...

  • React生命周期及减少render次数

    React生命周期 环境:react16 常用生命周期的钩子分类后,分布3个阶段内 初始化阶段 - 组件创建阶段才...

  • React之生命周期

    注:这里写的生命周期只是我用到过,还有比较常用的钩子函数,个人觉得react的生命周期用的流畅,react技术应该...

  • 04.React高级部分(中)

    React的生命周期函数 React生命周期函数的使用场景 这一小节,我们来做两个生命周期相关的常用操作1.如何避...

  • React的生命周期

    基于react16.x版本,保持更新 生命周期介绍 带 * 标识的为重要、常用的生命周期。 constructor...

  • React概念图

    React概念图 React组件生命周期概念图 参考文档:React入门教程 组件生命周期React:组件生命周期...

  • React基础篇之组件的生命周期

    引出生命周期 react生命周期(旧) react生命周期(新) getSnapshotBeforeUpdate的...

  • React入门(三)

    React Hooks React提供很多钩子函数,可以让函数式组件拥有状态和常用的生命周期函数以及ref/con...

  • React-Native 注意事项讲解

    React 常用方法 初始化 生命周期 组件间传值 布局和function相关 ScrollView 内容没显示?...

网友评论

      本文标题:React常用生命周期

      本文链接:https://www.haomeiwen.com/subject/ktldlltx.html