正在学习React Native中,抽时间把React的生命周期看了看。查阅了一些资料,并整理了下以便查阅。
看到一篇写的很详细的React Native生命周期的Blog,链接在此
1. 创建阶段
该阶段发生在createClass
之后。
2. 实例化阶段
该阶段发生在对组建实例化阶段。
getInitialState
定义初始化状态,用于初始化State。返回值会赋值给this.state属性。componentWillMount
组件将被挂载。常见初始化都在这个方法中。业务逻辑大多放在这里。render
渲染函数,渲染并返回一个虚拟的DOM。组建界面的代码都会作为返回值返回并渲染。componentDidMount
函数发生在render方法之后,在该方法中,ReactJS会使用render方法返回的虚拟DOM来创建真实的DOM结构。组件内部通过this.getDOMNode()方法来获取当前组件节点。这样就可以操作节点属性。
3. 更新阶段
该阶段发生在用户操作或者父级组件有更新之后。
componentWillReceiveProps
组建接收到props。在组件收到一个新的props时被调用。shouldComponentUpate
组建是否需要更新。用来拦截新的props或state,根据逻辑判断是否需要更新,返回true需要更新,反之不更新。componentWillUpate
组件将被更新。做一些更新前的操作,然后使用render进行渲染更新视图。componentDidUpdate
组件完成更新,发生在render更新渲染之后。常用来做一些DOM操作。
4.销毁阶段
该阶段发生在组建被销毁之前。通常用来做一些取消事件绑定、移除虚拟DOM中对应的组件数据结构、销毁一些无效的定时器等工作。
componentWillUnmount
容器将被销毁。