【发布时间】:2020-12-24 08:13:49
【问题描述】:
我有一个 Elm 应用程序。不久前,当我使用 FontAwesome 图标时,我意识到我的应用程序在本地崩溃了。我开始明白这是因为我选择了 SVG 图标,因此 FontAwesome 正在修改 DOM。这与 Elm 的 VDOM 机制相冲突。
这很容易解决——我迁移到了使用伪元素的 CSS 版本的 FontAwesome。最近一些用户抱怨生产中的应用程序冻结,他们显示了与我的日志数据不匹配的状态截图。过了一段时间,我才意识到所有这些用户都有谷歌翻译自动为他们翻译页面。 Google Translate clearly alters the DOM,所以 Elm 崩溃我并不感到惊讶。
如何防止我的 Elm 应用崩溃?如果第 3 方更改 DOM,有没有办法得到通知?这样我什至可以通知用户他们有一个干扰应用程序的扩展程序。
【问题讨论】:
-
我的直接想法是看看 React github.com/facebook/react/issues/11538 会发生什么
-
感谢@SimonH,提供有用的资源。
-
我用同样的问题创建了this issue。
标签: elm browser-extension virtual-dom