React生命周期
React17版本之前的声明周期
挂载阶段
- construct
- componentwillmount
- render
- componentdidmount
更新阶段
- componentWillreceiveProps:组件将要接受参数。(父组件更新时触发)
- shouldComponentUpdate:组件是否应该更新。(this.setState)
- componentWillUpdate:(this.forceUpdate)
- render
- componentDidUpdate
销毁阶段 - componentWillUnmount
React17版本之后
React对一些生命周期函数钩子进行了和谐 。使用static getDerivedStateFromProps静态方法来代替(3个will,即:componentWillmount、componentWillUpdate、componentWillReceiveProps)
挂载阶段
- construct
- getDerivedStateFromProps
- render
- getSnapshotBeforeUpdate:快照
- componentdidmount
更新阶段
- getDerivedStateFromProps:(this.forceUpdate、(this.setState)
- shouldComponentUpdate:组件是否应该更新。
- render
- getSnapshotBeforeUpdate:快照
- componentDidUpdate
销毁阶段 - componentWillUnmount