React生命周期函数 学习笔记

(一)必须记住的生命周期函数:

  1.  加载的时候: componentWillMount  , componentDidMount (dom操作)
  2.     更新的时候:   componentWillUpdate , componentDidUpdate
  3.     销毁的时候: componentWillUnmount

   特殊状态的处理函数(了解)

  1.    componentWillReceiveProps(object nextProps):                                    已加载组件收到新的参数时调用
  2.    shouldComponentUpdate(object nextProps, object nextState):             组件判断是否重新渲染时调用

(二)生命周期详解

  Mounting:已经插入真实的DOM      Updating:正在被重新渲染     Unmounting:已移出真实的DOM

  (1)加载的时候

    componentWillMount:  此方法在mounting之前被立即调用,它在render()之前调用,因此在此方法中setState不会触发重新渲染。此方法是服务器渲染中调用的唯一的生命周期钩子,通常我们建议使用constructor()。

         componentDidMount :此方法在组件被 mounted 之后立即被调用,初始化DOM节点应该在此方法中,如果需要从远端健在数据,这里是实例化网络请求的好地方,此方法中 setState 会触发组件重新渲染。

  (2)更新的时候

         componentWillUpdate:当接收新的 props 或 state 时,componentWillUpdate() 在组件渲染之前被立即调用。使用此函数作为在更新发生之前执行准备的机会。初始渲染不会调用此方法。

    componentDidUpdate:此函数在更新后立即被调用。初始渲染不调用此方法。当组件已经更新时,使用此操作作为DOM操作的机会。这也是一个好的地方做网络请求,只要你比较当前的props 和以前的props (例如:如果props没有改变,可能不需要网络请求)。

  (3)  销毁的时候

       componentWillUnmount:此函数在组件被卸载和销毁之前被立即调用。在此方法中执行一些必要的清理。例如清除计时器,取消网络请求或者清理在componentDidMount 中创建的任何DOM元素。


      生命周期很重要!

原文地址:https://www.cnblogs.com/misscai/p/10405572.html