React_生命周期

今天我们来学习React_生命周期

生命周期分七个:

1、componentWillMount()

2、componentDidMount()

3、componentWillReceiveProps

4、shouldComponentUpdate()

5、componentDidUpdate() //数据更新结束

6、componentWillUpdate() //数据更新前

7、componentWillUnmount()

生命周期的用法:
  • componentWillMount 在渲染前调用,在客户端也在服务端。

  • componentDidMount : 在第一次渲染后调用,只在客户端。之后组件已经生成了对应的DOM结构,可以通过this.getDOMNode()来进行访问。 如果你想和其他JavaScript框架一起使用,可以在这个方法中调用setTimeout, setInterval或者发送AJAX请求等操作(防止异步操作阻塞UI)。

  • componentWillReceiveProps 在组件接收到一个新的 prop (更新后)时被调用。这个方法在初始化render时不会被调用。

  • shouldComponentUpdate 返回一个布尔值。在组件接收到新的props或者state时被调用。在初始化时或者使用forceUpdate时不被调用。
    可以在你确认不需要更新组件时使用。

  • componentWillUpdate在组件接收到新的props或者state但还没有render时被调用。在初始化时不会被调用。

  • componentDidUpdate 在组件完成更新后立即调用。在初始化时不会被调用。

  • componentWillUnmount在组件从 DOM 中移除之前立刻被调用。

......

  • componentDidMount

装载完成,可以获取真实的DOM

  • shouldComponentUpdate(nextProps, nextState) - 找一个Demo

nextProps - 父组件传递过来的下一个数据/状态

nextState - 当前组件的下一个状态

用来优化性能

不会在初始化时被调用,装载阶段不会调用

返回的是bool值

return true 正常执行就OK了

return false 后面的生命周期就不会执行了,界面也就不会显示了,因为render都不执行了哪来的DOM结构啊

  • componentDidUpdate

更新已经完成时调用

可以获取真实的DOM元素

  • componentWillUnMount

在组件被卸载并销毁之前立即被调用

只执行一次

  • componentDidCatch

只能捕获子组件生命周期抛出的错误,本身抛出的错误是无法捕获到的

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 组件的生命周期方法分以下三个阶段。 Mounting当创建组件的实例并将其插入到DOM中时,将调用这些方法:con...
    _八神光_阅读 1,233评论 0 0
  • tips:很久没在简书更新文章了,欢迎大家逛逛我在github的博客点击查看 。 React v16.0前的生命周...
    aermin阅读 219,100评论 13 169
  • 1.组件挂载和卸载时 componentWillMount在render方法之前执行,只会在组件初始化时运行一次,...
    星月西阅读 1,042评论 0 0
  • 装载过程: Constructor:初始化state;绑定成员函数的this环境(bind、:: )防止以解构的方...
    a不知所谓阅读 433评论 0 1
  • 以前,一直觉得写作是不断地阅读不断地写作然后就可以变得很好了。而我自从高中以后就没有认真写过东西了,都是一些流水话...
    平和喜悦幸福阅读 199评论 0 0

友情链接更多精彩内容