修复:无法对未安装的组件执行反应状态更新。
作者:互联网
修复:无法对未安装的组件执行反应状态更新。
在开发 react.js 应用程序时可能会遇到此错误:
警告:无法对未安装的组件执行 React 状态更新。
这是一个空操作,但它表明您的应用程序中存在内存泄漏。
警告很明确,您正在更新状态,但组件已卸载!
让我们更深入地研究这个问题:
在 react.js 中,你的组件可能会被重新渲染多次,这没关系。尽管如此,当组件重新渲染(卸载然后重新安装)或组件被卸载(从页面中删除)时,您可能(不是有意地)更新状态。那是您遇到此错误的时候。
让我们看一个例子:
这里我们叫 设置状态
每两秒钟,但等待;即使组件已卸载,我们也会每两秒调用一次!
快速修复此问题:
https://gist.github.com/amirrezaDev1378/0dc4a8e24b1dfcb790607167d9fd0ae8
如果组件通过检查的值挂载,我们调用 setState
已卸载
.
每当组件卸载时,我们设置 已卸载
value 为 true,并且繁荣,它不会调用 setState!
更好的方法:
我们可以创建一个辅助函数以在异步 setState 操作中使用:
https://gist.github.com/amirrezaDev1378/9334b1ca7864145a0902803e2debef21
辅助功能信用:
如果文章对你有帮助,请考虑关注我或点赞文章!
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明
本文链接:https://www.qanswer.top/11990/40160409
标签:状态,修复,更新,https,卸载,组件,安装,setState 来源: https://www.cnblogs.com/amboke/p/16654316.html