0

我正在使用 JPM 为 Firefox 创建一个扩展。在 package.json 文件中,我们有这一行作为入口点...

"main": "index.js"

如何更改它,或者我还能做什么,以在我的扩展中包含更多 JS 文件?我基本上是在移植一个 Chrome 扩展程序,其中有 2-3 个 JS 文件。

我尝试了以下方法,但没有奏效。

"main": ["index.js", "file2.js"]

"main": [{"index.js", "file2.js"}]

"main": "index.js,file2.js"

为了进一步澄清,这两个文件都旨在在后台运行,而不是内容脚本。

4

2 回答 2

1

据我所知,通过package.json文件你只能指定一个main.js脚本。

正如开发人员的文档所说:

最低限度您将拥有一个由名为“main.js”的脚本实现的模块,但您可以在 lib 中包含其他模块,并使用 require() 函数导入它们。要了解如何实现和导入您自己的模块,请参阅实现可重用模块的教程。

因此,您可以在目录中创建自己的库lib,假设test.js按照文档并包含在您的main.js. 看一个例子:

测试.js:

vat test = function() {console.log("I'm a module");};
exports.test = test;

在你的 main.js 中:

var test = require('./test');
test.test();
于 2015-11-30T11:57:52.653 回答
0

我有同样的问题。如果将“file2.js”放在“data”目录中,则可以添加行 var x = require('./data/file2.js'); 在“main.js”文件中。然后像这样调用你的函数: x.yourFunc(); 请务必在 file2.js 中导出您的函数,并为每个函数分配一个导出变量:exports.func1 = function() { return yourFunc(); }

于 2016-01-16T11:48:29.853 回答