react生命周期

每次实例化组件的时候都会经历一下几个过程;

(1)getDefaultProps  此方法用于为实例设置默认的props值,此方法只调用一次,若想在渲染前改变props值 则在此方法中修改;

(2)getInitialState 此方法用来初始化状态值 State;react是不知能用this.state.XXX = 神马 ;修改状态值要用setState({XXX:xxx})

(3)componentWillMount  在渲染前调用一次,是渲染前改变状态值的最后一次机会

(4)render  创建一个虚拟DOM ,只能通过this.props和this.state访问数据,可以返回空,false,或者JSX创建的组件,只能返回一个顶级组件,不能在中间进行DOM操作!!!  每一次state和props改变都会从新调用render方法 即会重新渲染。

(5)componentDidMount  在渲染后调用一次,若想与JQ 或者操作DOM对象,写在里面。

组件存在期间,可以通过事件改变state和props,此时会调用一下的函数:

(1)componentWillReceiveProps 当props改变时,会调用这个函数,从此获得更新state的机会。

(2)componentWillUpdate  在收到新的props或者state进行渲染之前使用该方法

(3)componentDidUpdate 在收到新的props或者state后  渲染完成之后使用改方法

组件使命完成后,(如路由跳转新页面,关闭页面等),进入组件清理期

componentWillUnmount 在组件销毁前进行一些清理工作,如变量从新初始化,清空定时器等。  

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

推荐阅读更多精彩内容

  • 组件的生命周期方法分以下三个阶段。 Mounting当创建组件的实例并将其插入到DOM中时,将调用这些方法:con...
    _八神光_阅读 1,126评论 0 0
  • 又是一个老生常谈的内容,从ES6起已经开始使用class的方式去创建组件,这种创建方式上的变化也带来了写法和方法上...
    殷灬商阅读 468评论 0 1
  • 在组件的整个生命周期中,随着该组件的props或者state发生改变,它的DOM表现也将有相应的改变,一个组件就是...
    web蜗牛阅读 587评论 0 1
  • 上面的这幅图已经很好地诠释一个react组件的生命周期,所以认真看图!认真看图!认真看图! 一、getDefaul...
    好大一颗星阅读 311评论 0 2
  • 有关Day 6 文章的疑问请发表在评论区。
    Freedom_Pursuer阅读 174评论 0 2