firefox扩展在使用导出时中断



我正在为firefox开发这个插件,遇到了一些我不知道如何解决的问题:

在"主脚本"file1.js上,我运行以下代码进行测试:

document.body.style.border = "5px solid red";
console.log("extension ran");
alert("test")

而且一切都很好。现在,我想从同一文件夹中的file2.js文件中运行一个函数,如下所示:

import {createCheckBox} from "./file2.js"
createCheckBox();

在file2.js上,函数的实现方式如下:

export function createCheckBox(){
//code
}

然而,当我添加导入时,扩展上的任何东西都不起作用,甚至以前起作用的警报和控制台日志也不起作用。所以我知道我缺少了一些东西,导出不知何故破坏了扩展,但我不知道为什么或如何修复它。

感谢您的帮助!

最简单的方法是在清单中列出所有内容脚本,如下所示:

"content_scripts": [
{
matches: [...],
js: ['file2.js', 'file1.js']
}
]

这样,file2.js中的所有功能在file1.js中都可用,而无需任何导入。您也不需要export它们。

来自文件:

文件按照给定的顺序注入。这意味着,例如,如果您在此处包含jQuery,然后是另一个内容脚本,如以下所示:

"js": ["jquery.js", "my-content-script.js"]

然后;我的内容脚本.js"可以使用jQuery。

最新更新