Web前端之路

react生命周期

2016-12-21  本文已影响42人  e5169c37d62f

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

(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 在组件销毁前进行一些清理工作,如变量从新初始化,清空定时器等。  

上一篇 下一篇

猜你喜欢

热点阅读