插件拒绝被加载
有时候你的插件可能需要在特定条件下拒绝被加载,比如检测到不兼容的环境、缺少必要的依赖或者配置错误等情况。EasyBot 允许插件在启用时抛出异常来拒绝被加载。
基本原理
当插件在 enable
事件中抛出异常时,EasyBot 会捕获这个异常并阻止插件的加载,同时在控制台显示错误信息。
创建拒绝加载的插件
创建插件声明文件
在插件目录下创建 manifest.json
文件:
{
"name": "条件加载插件",
"version": "1.0.0",
"plugin_id": "conditional_loading_plugin",
"author": "MiuxuE",
"description": "演示如何在特定条件下拒绝插件加载",
"tags": ["示例", "条件加载"],
"entry": "main.js",
"contents": "# 条件加载插件\n\n这个插件会检查加载条件,如果不满足则拒绝加载。"
}
创建主入口文件
创建 main.js
文件,演示不同的拒绝加载场景:
/// <reference path="easybot-sdk/easybot.d.ts" />
logger.info("条件加载插件被加载");
bus.on('enable', () => {
logger.info("正在检查插件加载条件...");
if (/* Dooooooooo */) {
throw new Error("拒绝启用");
}
logger.info("所有条件检查通过,插件启用成功");
});
bus.on('disable', () => {
logger.info("条件加载插件被禁用");
});
提示
合理使用拒绝加载机制可以避免插件在不合适的环境下运行,提高系统的稳定性和用户体验。
注意
- 只在
enable
事件中抛出异常才会阻止插件加载 - 错误信息会显示在控制台中,请提供有用的信息
- 避免在其他事件中抛出未捕获的异常
- 考虑提供配置修复的方法或命令