我正在使用 openpgpjs 开发新的网络扩展。问题是,他们的一些 JS 功能使用了 AsmJS,而我无法在 firefox 上开发它。
我只在 Firefox 上遇到问题。我尝试了不同的版本,但它只改变了错误消息(有时,它只是警告消息,当我尝试使用 AsmJS 调用函数时它会失败。在 chrome 上,它工作正常。来自 firefox v69.0 的错误消息是 错误:AsmJS 模块尚不支持克隆。并且未提供代码行或模块名称。每次使用我的 webextension 加载 openpgpjs 模块时,JS 控制台中都会显示错误。
有什么方法可以强制浏览器不使用AsmJS而只是“回退”到“ native ”javascript吗?或者也许以某种方式禁用库脚本的调试?在 list 文件中以不同的方式包含脚本,这样浏览器就不会尝试在其上运行调试器? (我想禁用调试,因为我相信调试器无法调试通过 AsmJS 翻译的代码)。
这就是我在 list 文件中加载 JS 脚本和库的方式。没有后台脚本。
{
"content_scripts" : [
{
"matches" : [ "*://*.testdomain.cz/*" ],
"js": [
"/src/js/openpgp.min.js",
"/src/js/pgpDecryptor.js"
]
}
]
}
最佳答案
由于我无法找到更好的解决方案,因此我从库函数中删除了“use asm”(正如@Nickolay 的评论中所提到的)。
关于javascript - 无法在 webextensions 中使用 AsmJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57858839/