Mozilla / web-ext:一个命令行工具,可帮助构建,运行和测试Web扩展

2020-11-26 17:02:25

最终,它旨在以一种标准的,可移植的,跨平台的方式支持浏览器扩展。最初,它将为开发Firefox扩展程序提供简化的体验。

这是您可以运行的命令。单击每个以获取详细的文档,或在命令行上使用--help,例如web-ext build --help。

或者,您可以将此命令安装为项目的devDependencies之一。此方法可以帮助您控制团队使用的网络扩展的版本。

接下来,您可以在项目中将web-ext命令用作npm脚本。以下是--source-dir参数指定在何处找到扩展源代码的示例。

您始终可以使用-后缀将其他命令传递给npm脚本。例如,先前的脚本可以在命令行上指定Firefoxversion:

要获取更新,只需拉出更改并重建可执行文件即可。您不需要重新链接。

除了在命令行上使用web-ext之外,您可能还希望在NodeJS代码中执行web-ext。对此的支持有限。这里有些例子。

您无需任何参数验证即可执行命令功能。如果您想执行web-ext run,您可以这样做:

// const webExt = require('web-ext'); //或...从'web-ext'导入webExt; webExt。命令run({//这些是从CLI命令行接口派生的命令选项。//在此示例中,--source-dir被指定为sourceDir。firefox:'/ path / to / Firefox-executable',sourceDir:'/ path / to / your / extension / source /',},{//这是每个功能的非CLI相关选项//您需要指定此选项,以便NodeJS应用程序//在web-ext完成后可以继续运行。 shouldExitProgram:false,})。然后((extensionRunner)=> {//命令已经完成。每个命令都使用不同的值来解析//承诺console。log(extensionRunner); //您可以做一些事情,例如:// extensionRunner.reloadAllExtensions( ); // extensionRunner.exit();});

如果要控制日志记录,可以访问logger对象。这是打开详细日志记录的示例:

web-ext是为WebExtensions设计的,但是您可以尝试禁用清单验证以与旧版扩展一起使用。没有官方支持。

webExt。命令运行({sourceDir:'./src'},{getValidatedManifest:()=>({name:'some-fake-name',version:'1.0.0',}),shouldExitProgram:false,},);

是!使用web-ext工具可以为Firefox构建和发布扩展程序。该平台在2016年4月发布的Firefox 48中得到了稳定。

嗨!该工具正在积极开发中。要参与进来,您可以观看回购,文件问题,创建请求请求或在dev-addons上提问。阅读有关如何开发新功能的部分。

这是一个很好的问题,我们会为每个新的Web扩展功能自问。大多数WebExtension功能都是内置于浏览器中的,但是免费的命令行工具仍然会有所帮助。以下是部分示例列表: