React生命周期图:
- getDefaultProps
- 执行过一次后,被创建的类会有缓存(这也是为什么父子组件以props形式传参后,再更新时子组件不会改变的原因),映射的值会存在于this.props;
- 该方法在对象被创建前执行,因此不能在方法内调用this.props
- getInitialState
- 组件加载之前执行,返回值会被用于state的初始化值
- componentWillMount
- 执行一次,在初始化render之前执行,如果在这个方法内调用state,render()只会执行一次
-
render
-
componentDidMount
- 在初始化render之后只执行一次,在这个方法内,可以访问任何组件,子组件在父组件之前执行
- 从这个函数开始,就可以和js其他框架交互了,如设置setTimeOut或发起网络请求等
- shouldComponentUpdate
- 返回boolean布尔值, 默认return true。