Ali*_*ara 11 javascript frontend web reactjs
我正在使用反应应用程序并构建一个简单的应用程序。当我使用 {console.log('')} 方法在控制台上记录某些内容时,控制台上会出现第二条日志,它似乎来自第 1860 行的文件名 {installHook.js}。我已经尝试过寻找它,但我没有找到。我很好奇为什么会发生这种情况。
我已经尝试过寻找它,但没有找到。我很好奇为什么会发生这种情况。
Pau*_*oll 18
其他答案是说“删除 StrictMode”,但甚至没有考虑可能产生的副作用。
严格模式将帮助您清除由不纯渲染和效果清理引起的常见错误。
然而,这会带来明显的副作用:
- 您的组件将重新渲染额外的时间来查找由不纯渲染引起的错误。
- 您的组件将重新运行 Effects 一段额外的时间,以查找因缺少 Effect 清理而导致的错误。
- 将检查您的组件是否使用了已弃用的 API。
重新渲染当然要对重复的日志输出负责。
还需要注意的是,这并不影响生产,只会影响开发构建。
虽然我不能说“删除 StrictMode”的建议是危险的,但我当然会认为,当您想要创建高质量的应用程序时,这不是最好的决定。根据我的经验,越早启用严格的调试、编译和 lint 检查,从长远来看效果就越好。思考“哦,我们可以稍后再做”会导致非常头痛,有时甚至会导致难以克服的大量重构。
好吧,老头说得够多了……它能修好吗?获得 StrictMode 的好处吗?!
是的。
Bobbyhadz提到React DevTools有一个选项(见下文)在 StrictMode 下禁用日志的双重渲染。
这个故事的寓意是……不要因为头很热就停止戴摩托车头盔!
希望这个建议对某人有所帮助,祝你有美好的一天!
| 归档时间: | 
 | 
| 查看次数: | 6423 次 | 
| 最近记录: |