componentDidUpdate()会在更新后立即被调用,首次渲染不会执行此方法。
当组件更新后,可以在此处对DOM进行操作,如果你对更新前后的props进行了比较,也可以选择在此处进行网络请求。你也可以在componentDidUpdate()中直接调用setState(),但请注意它必须被包裹在一个条件语句中。
componentDidUpdate(prevProps,prevState,snapshot)
componentDidUpdate(prevProps,prevState){
if(prevProps.location.pathname !== this.props.location.pathname){
this.setState({
selectedTab: this.props.location.pathname,
})
}
}