React生命周期详解

作者: 大路无疆 | 来源:发表于2017-06-05 17:49 被阅读207次

作为一个轻量级前端组件框架,react流行起来也不无道理,它可以不同程度的适配到你的应用中。你既可以只是轻量的引入react,在遗留系统中使用它来构建可复用的组件,你也可以使用一整套生态,从0开始使用react来构建你的前端应用。刚开始使用react,被她的轻量,快速和灵活深深吸引;跟Angular比较起来,她没有那么多的约束和概念,用起来那么束手束脚。同时,她的基于虚拟Dom的单向数据绑定机制将数据和视图的更新更多交由开发者来完成,因此,如何精准简洁的控制数据和视图的更新,构建高效的应用,是使用react会一直伴随我们的问题。在采取合理的实践之前,我们必须详细的了解React的生命周期机制,它将帮助我们在合适的时间更新组件状态,并得到正确的视图。

组件创建过程

从上图我们可以看到,组件在创建的过程中,需要获取默认的属性,初始状态,然后准备加载组件,再开始渲染,然后再执行加载之后的后续操作。

在这个过程中,推荐在渲染UI组件之前,只加载默认的属性和状态。任何状态数据的变更,比如异步请求数据,应该放在组件渲染完成之后,ComponentDidMount方法中。

属性更新

在属性更新过程中,先执行componentWillReceiveProps来接受组件新的属性,然后调用shouldComponentUpdate判断组件的state是否发生变化。如果为false,则componentWillUpdate, render和componentDidUpdate都不会执行。

状态更新

当调用setState方法更新组件状态时,调用shouldComponentUpdate判断组件的state和props是否发生变化, 进而决定是否调用后续方法来更新组件的状态和试图。

卸载组件

在卸载组件的过程中,一般使用componentWillUnmount来清理相关资源,例如定时器等。

现在,大家是否对组件各种场景下的状态更新过程有了更清晰的了解,对操作react组件更有信心了呢?

相关文章

  • React 生命周期详解

    React 生命周期详解 生命周期的三个阶段 装载过程: Mouth React组件的第一次渲染DOM的过程, 更...

  • react组件生命周期

    下图详细列述了 React 组件在整个生命周期中所涉及的方法和行为: 生命周期详解 组件在整个 ReactJS 的...

  • vue生命周期

    vue生命周期详: vue生命周期详解图: vue生命周期详解代码展示:

  • React 经典案例--TodoList

    上次写了一个React生命周期详解,给新手看还是不是特别容易理解(其实我也是新手),这边再做一个React的tod...

  • React概念图

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

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

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

  • React生命周期详解

    Mounting / 挂载阶段 getDefaultProps->getInitialState->compone...

  • react生命周期详解

    这一部分内容一直一知半解,最近发现一篇文章,非常好的解释了生命周期的问题,留存在这里,以备后查! 简介 一个rea...

  • React生命周期详解

    1 React生命周期流程 调用流程可以参看上图。分为实例化,存在期和销毁三个不同阶段。介绍生命周期流程的文章很多...

  • react生命周期详解

    上面的这幅图已经很好地诠释一个react组件的生命周期,所以认真看图!认真看图!认真看图! 一、getDefaul...

网友评论

    本文标题:React生命周期详解

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