正在添加getDerivedStateFromProps作为传统componentWillReceiveProps的更安全的替代方案.
这就是16.3文档所说的.这个生命周期还有什么更多还是仅仅是名称变更?
Shu*_*tri 11
getDerivedStateFromProps不仅仅是改名componentWillReceiveProps.它是一个静态方法,在实例化组件之后或在接收新的props之前componentWillReceiveProps调用,不像在初始渲染时调用它.
返回一个对象以更新状态以响应prop更改.
返回null表示状态没有变化.
引入静态生命周期方法以防止实例属性的不安全访问.
目的getDerivedStateFromProps是仅根据props更改更新状态,而不是基于可以执行的API调用或函数调用等prevProps操作.所有这些都可以在componentDidUpdate生命周期函数中完成,这是安全的,因为即使componentWillReceiveProps数据中的更改将在渲染之后到达,并且通常会触发另一次重新渲染,这可以在componentDidUpdate生命周期方法中完成.
您可以参考此RFC以了解有关此更改的原因的详细信息.