继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

React在16.4版本中针对getDerivedStateFromProps的调整

拉丁的传说
关注TA
已关注
手记 608
粉丝 126
获赞 789

作者:rojer95

原文链接:https://segmentfault.com/a/1190000015282649

FB团队在16版本的react中对组件的生命周期函数进行了一些修改,其中就包括了getDerivedStateFromProps。

在16.4版本之前,getDerivedStateFromProps的执行是只在props更新是才执行,然而在16.4版本中,FB对其中进行了调整如下。

It is expected. See for details:

https://reactjs.org/blog/2018/05/23/react-v-16-4.html#bugfix-for-getderivedstatefrompropshttps://reactjs.org/blog/2018/06/07/you-probably-dont-need-derived-state.htmlIf this change breaks your code, it means your code already has a bug that causes state to reset too often.

简单来说就是:
每次渲染组件时都会调用getDerivedStateFromProps。在旧版本(16.4以前)中,getDerivedStateFromProps只会在props更新是执行而并且不会因组件setState而触发。FB指出这是最初实施过程中的疏忽,现在已经得到纠正。
所以,在16.4版本中,组件执行setState时也会触发getDerivedStateFromProps


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP