componentWillMount:16版本就废弃了,相当于Vue中created;
componentDidMount: 会在组件挂载后(插入DOM中)立即调用;相当于Vue中的onMounted;
componentDidUpdate(prevProps, prevState, snapshot):会在更新后会被立即调用,首次渲染不会执行;相当于Vue中的onUpdated;
componentWillUnmount():会在组件卸载和销毁之前调用:相当于Vue中的unmounted
不常用的生命周期方法
shouldComponentUpdate(
nextProps, nextState
): 判断react组件的输入是否受当前state || props更改影响,默认state每次发生改变组件都会重新渲染。主要是性能优化;
getDerivedStateFromProps(props, state):调用render方法前调用,初始化挂载及后续更新都会被调用,返回对象来更新state,返回null不更新任何内容;
getSnapshotBeforeUpdate(prevProps,prevState)最近一次渲染输入(提交DOM节点)前调用。组件发生改变之前从DOM捕获一些信息(滚动位置);返回值将作为参数传递给componentDidUpdate();
getDerivedStateFromError(err)会在后代组件抛出错误后调用,将错误作为参数,并返回一个值更新state;
componentDidCatch(error,info)在后代组件抛出错误后被调用;