插件说明
ee-core: v1.4.0
ee-core: v2.0.3 版后,尽量使用模块化api,减少对this.app依赖
# 介绍
将通用业务做成插件,并挂载到 app.addon 对象上,扩展框架能力。
# 目录
./electron/addon
addon目录下,一个插件一个目录。 如:example/index.js 其中 example 为 插件名,index.js 为 插件入口文件(框架加载这个入口文件)
# 示例
- 编写插件代码
# example/index.js
/**
* example插件
* @class
*/
class ExampleAddon {
# 自动注入 app 对象
constructor(app) {
this.app = app;
}
/**
* hello
*
* @function
* @since 1.0.0
*/
hello () {
return 'hello';
}
}
ExampleAddon.toString = () => '[class ExampleAddon]';
module.exports = ExampleAddon;
- 添加配置
# 打开配置文件 ./electron/config/config.default.js
/**
* 插件功能
* window 官方内置插件
* example demo插件
*/
config.addons = {
window: {
enable: true,
},
// 插件名为key,enable 配置启用
example: {
enable: true,
}
};
- 调用插件
# ./electron/controller/example.js
async test () {
# 获取插件对象,已经被实例化,且为单例
const exampleAddon = this.app.addon.example;
# 调用 hello 方法
const str = exampleAddon.hello();
console.log('str:', str);
return;
}
上次更新: 2025/02/08, 11:20:40