美文网首页
React学习总结3--生命周期函数

React学习总结3--生命周期函数

作者: 琉璃_xin | 来源:发表于2019-08-15 20:12 被阅读0次

每个组件都包含“生命周期方法”。速查表
demos源码

挂载

当组件实例被创建并插入 DOM 中时,其生命周期调用顺序如下:

如果上层组件中有Component组件以及PureComponent组件,那么打印出生命周期的调用结果为:

挂载阶段

这里使用了PureComponent,它会在shouldComponentUpdate中对 props 和 state 进行浅层比较,并减少了跳过必要更新的可能性。可以通过update过程来验证。

更新

当组件的 props 或 state 发生变化时会触发更新。组件更新的生命周期调用顺序如下:

getDerivedStateFromProps
shouldComponentUpdate
render
-sub getDerivedStateFromProps
-sub render
------com getDerivedStateFromProps
------com render
---puresub getDerivedStateFromProps
getSnapshotBeforeUpdate
------com componentDidUpdate
-sub componentDidUpdate
componentDidUpdate

可以发现PureComponent并没有重新render,这是因为shouldcomponentupdate返回了false。我们可以多使用PureComponent来减少不必要的渲染过程,进而优化性能。

卸载

当组件从 DOM 中移除时会调用如下方法:

错误处理

当渲染过程,生命周期,或子组件的构造函数中抛出错误时,会调用如下方法:

可以使用setState的生命周期

  • componentWillMount
  • componentDidMount
  • componentDidUpdate
    这里必须要有前置条件,否则会陷入update的死循环。

static getDerivedStateFromProps(props, state)

这个生命周期适用于 state 的值在任何时候都取决于 props。让组件在 props 变化时更新 state。

相关文章

  • React学习总结3--生命周期函数

    每个组件都包含“生命周期方法”。速查表。demos源码 挂载 当组件实例被创建并插入 DOM 中时,其生命周期调用...

  • RN-生命周期函数(新)

    旧版生命周期函数 react 16.4 以后生命周期函数 http://projects.wojtekmaj.pl...

  • React 生命周期函数

    https://reactjs.org/docs/react-component.html React生命周期函数...

  • React的生命周期函数

    一、生命周期函数的定义 在某个时刻自动被调用的函数是生命周期函数 二、React中生命周期函数示意图 三、生命周期...

  • 04.React高级部分(中)

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

  • React Native 组件的生命周期

    React Native学习之组件的生命周期函数 iOS开发或者Android开发的同学肯定对组件的生命周期不陌生...

  • useState

    react-hooks 如果你熟悉 React class 的生命周期函数,你可以把 useEffect Hook...

  • React被废弃的三个生命周期函数及替代函数

    前言 学习过React的同学应该知道react生命周期函数贯穿于数组的初始化、挂载、更新、销毁的整个过程。可以说配...

  • Vue 生命周期函数

    吐槽:最近学习 Vue 的生命周期函数,有点搞不懂,为什么要叫钩子函数???以前了解过 React 的生命周期,开...

  • 四:React 进阶三 (生命周期)

    react(一):组件的生命周期 生命周期函数 在组件运行的某个时刻,会被自动执行的一些函数。 React生命周期...

网友评论

      本文标题:React学习总结3--生命周期函数

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