生命周期中组建的三种状态:
在组件的生命周期中分为三种状态,第一种是装载状态(Monnting),第二种是组件更新时的状态(Updating),第三种的组件卸载时的状态(Unmounting), 这三种对应的组件的三个阶段。
React Native 生命周期图:
1、装载状态(Monnting):
注意:除了render()以外,在该状态中的生命周期函数只会调用一次。
getDefaultProps()
在ES5中,当组件被渲染之前会调用getDefaultProps() 函数,重写该函数,可以为组件设置默认的属性。而在ES6中可以通过static defaultProps 来定义组件默认的属性。
getInitialState()
在ES5中,通过调用getInitialState()函数对组件进行初始化。而在ES6中是通过constructor(props)函数对组件进行初始化。
componentWillMount()
在组件装载之前会调用的函数。
render()
调用该函数主要为了完成对组件的渲染
componentDidUpdate()
当组件渲染完成以后就会调用该函数。
2、组件更新时的状态(Updating):
注意:在该状态中的生命周期函数会被多次调用
componentWillReceiveProps()
如果组件的属性发生了改变时就会调用该函数
shouldComponentUpdate()
调用该函数是为了判断是否对组建进行重新渲染,返回false那么就表示不重新渲染,如果返true那么就调用componentWillUpdate()函数,告诉其组件将会被渲染
componentWillUpdate()
调用该函数是为了准备重新渲染组件,当该函数被调用后就会执行reader()函数进行重新渲染
componentDidUpdate()
重新渲染完成以后就会调用该函数。
3、组件卸载时的状态(Unmounting):
注意: 除了render()以外,在该状态中的生命周期函数只会调用一次。
componentWillUnmount()
当页面关闭的时候,组件就会被卸载,卸载的时候就会调用该函数,在该函数中可以做资源的回收、释放等操作。