初始化阶段
- constructor(): 用于绑定事件,初始化 state
- componentWillMount():组件将要挂载,在 render 之前调用,可以在服务端调用。
- render():用作渲染 dom;
- componentDidMount():在 render 之后,而且是所有子组件都 render 之后才调用。
更新阶段
- getDerivedStateFromProps:getDerivedStateFromProps 会在调用 render 方法之前调用,并且在初始挂载及后续更新时都会被调用。它应返回一个对象来更新 state,如果返回 null 则不更新任何内容;
- componentWillReceiveProps(nextProps): 在这里可以拿到即将改变的状态,可以在这里通过 setState 方法设置 state
- shouldComponentUpdate(nextProps, nextState): 他的返回值决定了接下来的声明周期是否会被调用,默认返回 true
- componentWillUpdate(): 不能在这里改变 state,否则会陷入死循环
- componentDidUpdate(): 和componentDidMount()类似,在这里执行 Dom 操作以及发起网络请求
析构阶段
- componentWillUnmount():主要执行清除工作,比如取消网络请求,清除事件监听。
|