插件页面的调用 ============== 插件界面与设置界面类似,逻辑也与设置界面界面相仿。这里仅做不同于设置界面的介绍。 插件界面源代码存储在 `TaoLiSystem/page/plugin.py` 中。 插件查找 -------- 插件均存放于 `TaoLiSystem/plugins` 文件夹下,插件的结构在之后的章节会介绍。 插件界面被加载的时候,会自动遍历 `TaoLiSystem/plugins` 文件夹的所有文件,然后将插件的名称与插件的文件夹路径加入到变量 ``plugins_name`` 与 ``plugins_folder`` 中。 加载插件 -------- 加载插件分为下面几个流程,流程在 ``load_plugin()`` 中: * 记录插件加载之前导入的模块。 * 动态导入插件,进入插件的主循环。(如果插件没有循环直接退出,如果是死循环直接无法退出。) * 插件主循环退出后,获取插件中的 ``KEEP_MODULES`` 列表变量,保留其中不释放的模块。(有些插件可能需要后台运行。) * 对比插件加载之前导入的模块,释放不必要的模块。在比对全局变量中上一次记录的不必要的模块,如果缺少就释放缺少的模块。 * 记录不释放的模块到全局变量中。