Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@tomjs/unzip-crx

tomjs40.6kMIT1.1.3TypeScript support: included

unzip chrome extension files (*.crx)

unzip, crx, chrome, extension, manifest

readme

@tomjs/unzip-crx

npm node-current (scoped) NPM jsDocs.io

English | 中文

解压 Chrome 插件文件

如果你想解压 Chrome扩展文件 (*.crx),你可能会遇到你的解压库声称文件头格式错误的问题。这是由于Chrome为识别crx文件 添加了一些额外的信息unzip-crx 处理这些额外的标头,并像往常一样解压缩。

本库是基于 Peerigonunzip-crx 做了简单的修改,增加了 esmcjs 支持。

而这个 unzip-crx 深受 abarreircrx2ffRob Wucrxviewer 的启发,谢谢!

安装

# pnpm
pnpm add @tomjs/unzip-crx

# yarn
yarn add @tomjs/unzip-crx

# npm
npm add @tomjs/unzip-crx

示例

  • esm
import unzip from 'unzip-crx';

const crxFile = './this-chrome-extension.crx';

unzip(crxFile).then(() => {
  console.log('Successfully unzipped your crx file..');
});
  • cjs
const unzip = require('unzip-crx');

const crxFile = './this-chrome-extension.crx';

unzip(crxFile).then(() => {
  console.log('Successfully unzipped your crx file..');
});

文档

API

unzip(file[, destination])

  • file: string,指向要解压的文件路径
  • destination: string,指向目标文件夹的路径(可选)

如果文件成功解压缩,则解析Promise;否则抛出异常(使用.catch())。

changelog