自定义组件必须实现render方法,
react-native组件的生命周期:
1.初始化:Mounting
getDefaultProps:全局调用一次;
constructor(getInitalState):组件实例创建时调用的第一个函数,主要适用于初始化state;
componentWillMount:
render函数:用于组件渲染函数一般props和state变化会重新渲染组件);会返回一个Virtual DOM,只允许返回一个最外层容器组件
componentDidMount:在render渲染之后,React会根据Virtual DOM来生成真实DOM,生成完毕后会调用该函数;
2.运行状态:Updating
componentWillReceiveProps:props改变会调用该函数(父容器来更改或者是redux);
shouldComponentUpdate: 该函数传递过来两个参数,新的state和新的props。state和props的改变都会调到该函数。该函数主要对传递过来的nextProps和nextState作判断。如果返回true则重新渲染,如果返回false则不重新渲染。在某些特定条件下,我们可以根据传递过来的props和state来选择更新或者不更新,从而提高效率。
componentWillUpdate(object nextProps, object nextState):与componentDidMount方法类似,组件上会接收到新的props或者state渲染之前,调用该方法。但是不可以在该方法中更新state和props;
3.销毁:Unmounting
componentWillUnmount:组件DOM中移除的时候调用。在这里进行一些相关的销毁操作,比如定时器,监听等等。
组件的生命周期-详解