震惊!开启浏览器翻译竟会导致react应用报错?

仅记录此次线上报错,没有干货,

意外的应用程序错误! 无法在"节点"上执行"removeChild":要删除的节点不是该节点的子节点。NotFoundError:Failed to execute 'removeChild'on 'Node': The node to be removed is not a child of this node.

事故现场

原因分析

由于用户开启了浏览器翻译,会修改dom,导致react不认识这个dom了,会影响react内部的diff算法,最终导致应用崩溃

vite-rolldown文档为例:

翻译前: 翻译后:

怎么解决

相关issues

相关推荐
掘金安东尼4 小时前
让 JavaScript 更容易「善后」的新能力
前端·javascript·面试
掘金安东尼4 小时前
用 HTMX 为 React Data Grid 加速实时更新
前端·javascript·面试
灵感__idea6 小时前
Hello 算法:众里寻她千“百度”
前端·javascript·算法
yinuo7 小时前
轻松接入大语言模型API -04
前端
袋鼠云数栈UED团队7 小时前
基于 Lexical 实现变量输入编辑器
前端·javascript·架构
cipher8 小时前
ERC-4626 通胀攻击:DeFi 金库的"捐款陷阱"
前端·后端·安全
UrbanJazzerati8 小时前
非常友好的Vue 3 生命周期详解
前端·面试
AAA阿giao8 小时前
从零构建一个现代登录页:深入解析 Tailwind CSS + Vite + Lucide React 的完整技术栈
前端·css·react.js
兆子龙9 小时前
像 React Hook 一样「自动触发」:用 Git Hook 拦住忘删的测试代码与其它翻车现场
前端·架构
兆子龙9 小时前
用 Auto.js 实现挂机脚本:从找图点击到循环自动化
前端·架构