Add-ons
插件扩展系统
- 写入
userDatafolderextensions
设计
Install
安装插件有多种渠道。
- [x] 通过
npm安装 - [ ] 通过
git安装 - [ ] 通过 url 安装
- [ ] 通过本地文件安装
如何通过 npm 设计本地插件模块
- 在用户的临时文件目录,通过
npm install安装node_modules - 通过 Node API
module.paths.push(),使得可以在插件中require自定义安装的 npm 模块。
ts
const addonsFolder = getAddonsFolder()
const nodeModulesFolder = path.join(addonsFolder, 'node_modules')
// add user addons node_modules to require.resolve
module.paths.push(nodeModulesFolder)
// ESM 不再有 module 变量ts
const a = require('@user/addon-a')Break
升级到 Electron@29 ESM 后,不再有 require。
ts
// 引入环境创建的 addon require
import { require } from '@/electron/env'npm@8 drop programmatic API
lock to npm@7