React笔记(组件生命周期)

参考资料

组件未插入真实DOM

componentWillMount()

  • 组件Render前执行
  • 只执行一次
  • 在componentWillMount中做的事都可以放到constructor()中做

componentDidMount()

组件被重新渲染(更新的过程实质是子组件接收父组件参数后重新render的过程)

compentWillReceiveProps(nextprops)

  • 父组件为子组件传递参数后,触发子组件调用该函数(不管父组件的props是否改变)
  • 写日志
componentWillReceiveProps(nextProps)
    {
        console,log("当前props日志")
        console.log("current: "+this.props.name)
        console.log("next: "+nextProps.name)
    }

shouldComponentUpdate(nextProps, nextState)

  • state或props改变时都会触发
  • 返回true时,启用diff算法(结合key)进行Virtual DOM的计算与比较,从而得出DOM树的最小修改量,再交给componentWillUpdate()去执行
  • 避免节点被重复渲染
 if(nextProps.item.name!==this.props.item.name)
                {
                return true;
                }
                else
                {
                    return false;
                }

componentWillUpdate()

组件移出真实DOM

componentDidUpdate()

  • 执行完后触发render

componentWillUnmount()

  • 我们为组件注册的事件必须在该函数中卸载


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在React Native中使用组件来封装界面模块时,整个界面就是一个大的组件,开发过程就是不断优化和拆分界面组件...
    ITxiansheng阅读 962评论 1 2
  • 在React Native中使用组件来封装界面模块时,整个界面就是一个大的组件,开发过程就是不断优化和拆分界面组件...
    朱_源浩阅读 9,003评论 6 38
  • 生命周期流程图简单如下: 组件让你把用户界面分成独立的,可重复使用的部分,并且将每个部分分开考虑。React.Co...
    Simple_Learn阅读 1,117评论 0 0
  • 说在前面 关于 react 的总结过去半年就一直碎碎念着要搞起来,各(wo)种(tai)原(lan)因(le)。心...
    陈嘻嘻啊阅读 6,960评论 7 41
  • 印象1 村路恰似乡府的忐忑 垂死的老烟倌儿还想再来一口 血红般铁锈,洇着 河水从怀抱中洒落 稻田到八月颗粒无收 彻...
    月階霜滿除阅读 166评论 0 0