首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Electron加载扩展

Electron加载扩展

作者头像
码客说
发布2022-05-11 14:07:28
发布2022-05-11 14:07:28
1.9K00
代码可运行
举报
文章被收录于专栏:码客码客
运行总次数:0
代码可运行

步骤

Edge扩展

Edge的扩展位置为

C:\Users\你的用户名\AppData\Local\Microsoft\Edge\User Data\Default\Extensions

我们可以看到这样的文件夹

Edge中输入

代码语言:javascript
代码运行次数:0
运行
复制
edge://extensions/

进入扩展页面

在浏览器中找到所需扩展的ID

我这里需要的是kmpfgkgaimakokfhgdahhiaaiidiphco

项目根目录添加文件夹extensions

把我们所需的扩展添加进来

加载扩展

Electron 9及以上

代码语言:javascript
代码运行次数:0
运行
复制
const { app, session } = require('electron')
const path = require('path')

app.on('ready', async () => {
    let extension_path = path.join(
        process.cwd(),
        "extensions",
        "kmpfgkgaimakokfhgdahhiaaiidiphco",
        "2.3.0_0"
    );
    await session.defaultSession.loadExtension(
        extension_path,
        // 打开本地文件也应用拓展
        {allowFileAccess: true}
    )
})

Electron 9以下

代码语言:javascript
代码运行次数:0
运行
复制
const path = require('path')

let extension_path = path.join(
    process.cwd(),
    "extensions",
    "kmpfgkgaimakokfhgdahhiaaiidiphco",
    "2.3.0_0"
);
BrowserWindow.addDevToolsExtension(extension_path)

注意

不支持打包后的扩展(如.crx文件) 运行时会报好多警告,不影响插件加载。

打包可用

为了保证开发时打包后扩展均可用

  1. main.js中扩展根目录路径使用process.cwd()获取
  2. package.jsonextraFiles中添加扩展文件夹
代码语言:javascript
代码运行次数:0
运行
复制
{
  "build": {
    "files": [
      "main.js",
      "*.html",
      "images/**/*",
      "app.ico",
      "node_modules/**/*"
    ],
    "extraFiles": [
      "./extensions"
    ],
  },
}

不要把扩展的路径只写在files下,否则打包后不可用。

校验扩展是否生效

我们可以访问

https://www.psvmc.cn/login.json

加载扩展前是这样的

加载后是这样的

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-05-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 步骤
    • Edge扩展
    • 加载扩展
    • 打包可用
    • 校验扩展是否生效
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档