- 初始化渲染:constructor(初始化工作) -> componentWillMount(废弃)/getDerivedStateFromProps -> render -> componentDidMount(发送网络请求、订阅) -> componentWillUnmount(清理操作)
- 更新渲染: shouldComponentUpdate(可决定组件是否渲染,做性能优化)-> componentWillUpdate -> render -> getSnapshotBeforeUpdate -> componentDidUpdate(操作DOM,网络请求)
- 几个方法说明:
- getDerivedStateFromProps: 初始挂载和后续更新时都会调用 static
- getSnapshotBeforeUpdate: 最近一次渲染提交到DOM树前执行,此时DOM树还未改变,需要更新前DOM的信息可以在次方法中处理
- componentWillReceiveProps:已挂载组件在接收到新的props前调用,组件执行setState操作不会执行该方法。
- 每次由状态改变导致的页面视图的改变都会经历两个阶段:
- render: Diff
- commit: 将需要改变的DOM 提交至试图中
`