本帖最后由 宝塔用户_sffewp 于 2020-3-26 12:49 编辑
插件名称:面板JSBridge安装器
应用ID:panel_jsbridge_installer
作者:xieyi1393
说明:
What???看了标题你你一定一脸懵逼,"走出"插件页面,啥意思?其实说来话长....
某一天,小A看上了XX的面板美化插件和河妖的宝塔助手插件,但他先装了河妖的宝塔助手插件,然后才装的XX面板美化插件,这时,美化插件把整个页面覆盖了,结果河妖的插件就失效了(打个比方,河妖大佬别介意)(河妖:我容易么我)
这个前置插件就专治这种面板辅助功能不规范(比如直接覆盖页面)导致的各类插件失效,利用的是对URL进行判断,自己的插件挂载(比如我挂载文件页面),在文件页面就会唤醒对应函数进行对应的功能,而且(重点来了)他可以让开发者只使用短短的几行代码就能对其他页面进行修改,而不需要改动宝塔面板代码(我就是为了这个才开发这个插件)
好了,简单说一下目录结构,由于此插件需要修改模板,为了防止卸载插件后导致的各种JS报错/404,我将主文件放在了宝塔面板的静态资源目录而不是插件静态资源目录
/www/server/panel/BTPanel/static/btJSBridge/
|--- bridge.js JSBridge主文件
|--- bridge.json 插件/扩展列表文件
|--- plugins/ 存放插件/扩展的目录
好了,接着我们来说一说JSBridge的插件(soft)/扩展(extendion)的区别
JSBridge插件,指的是对页面进行修改或者其他会对GUI/功能产生直接影响的脚本(包括但不限于:增加功能,增加提示)
JSBridge扩展,指的是不对也没进行修改或者其他会对GUI/功能产生直接影响,但提供一个接口实现对应功能(包括但不限于:增加HTTP请求库,增加弹框库等)的脚本
在代码层面,目前两个没有很大的区别,但是请注意,在以后的版本中,扩展的初始化代码永远比插件先执行,无论其优先级多低(目前版本还没写)
好了,暂时更这么多,下次再更
====更新分界线=====
|
|