2

使用jpm,现在(从 Firefox 38 开始)可以在 Firefox 附加组件中使用 npm 模块,参见。MDN 上的文档。这似乎仅限于主条目文件(index.js默认情况下),特别是因为require()没有在内容脚本中定义

有没有办法在 Firefox-Addons 的内容脚本中使用 npm 模块?

4

1 回答 1

1

您可以通过 获取文件的 url require.resolve,因此请使用以下内容:

contentScriptFile: [ require.resolve("something/lib/file.js"), require("sdk/self").data.url("content-script.js") ]

这将在内容脚本中使用来自 npm 的文件。

如果 npm 文件是 CommonJS 文件,那么这会变得更加棘手,您可能必须读取文件的内容,并将其传递给内容脚本(使用消息传递或contentScriptOptions)以使用 requireJS 或其他方式对其进行评估。

于 2015-05-13T04:17:55.970 回答