Workbench:管理插件与业务应用
区分插件管理、业务页面和上下文工具,按任务选择页面与资源契约。
Workbench 是宿主提供的管理工作台。插件目录负责配置、生命周期和依赖排查;“应用”集中展示插件发布的业务入口。 业务数据和操作仍由 Plugin 拥有,关闭工作台不应停止业务能力。
使用工作台
从应用的 vp run dev 输出打开 Workbench 地址。已有宿主需要先按宿主配置启用 Workbench。
- 从“插件”进入唯一的插件目录,按分组查找、选择和管理插件。中央显示选中插件的配置或页面。
- 从“应用”进入业务页面,例如机器人集合、会话或报表;业务应用自行组织集合与实体导航。
- 普通入口在当前标签页中导航;活动标签后面的“+”复制当前地址,适合并行查看。它不复制尚未保存的输入。
- 右侧“插件信息”提供状态与依赖,“最近日志”独立标签提供最近 10 条记录;“查看完整日志”打开按当前插件筛选的独立日志标签。
- 左、右、底部扩展从插件信息或顶部查找按需打开,可关闭并重新打开,未关闭的面板布局随当前插件切换;底部没有默认工具。区域可以收起,中央文档可以拆分和关闭。具体操作与排错见工作台操作。
插件分组和工作区布局是不同的状态:前者整理管理目录,后者安排文档与工具,不改变业务数据和依赖关系。
为插件选择界面
先确定数据和操作属于谁,再选择展示形式。普通配置直接使用标准表单,不必为每个插件另造设置页。
| 任务 | 入口 |
|---|---|
| 编辑地址、并发数、开关等普通配置 | 声明配置 |
| 提供说明、状态、按钮或一次性表单 | Content |
| 实现自定义交互、集合导航、分页或流式输出 | View |
| 把其他插件拥有的界面放在当前插件中 | Attachment |
| 添加跟随当前插件的辅助导航、详情或工具 | 上下文面板 |
| 调整目录的分组、多选和顺序 | 插件分组 |
Content、View 和 Attachment 决定内容与 API 如何提供;tab()、route() 和 panel() 决定内容放在哪里。
有独立导航和草稿的业务功能使用文档,短暂的插件级辅助信息使用面板。不要按每个账号、订单或机器人生成页面声明;用固定集合页和参数化路由呈现动态实体。
密钥存入 Vault,配置只保存引用。一次性凭据表单可以使用 Content,多步骤登录和恢复流程使用 View。
声明、发布与验证
- 用
workbench.define()声明固定入口及 placement。 - 在 Plugin 的
init()中调用一次this.ctx.workbench?.publish(),提供入口需要的业务操作。 - 打开入口,执行读取和写入;再离开页面,确认订阅、打开的 API 和长任务按契约释放。
?. 允许 Plugin 在没有 Workbench 的宿主中继续运行。声明和发布 binding 的 key 必须一致。
API 返回有界普通数据,资源型结果声明清理责任,见 API 契约;查询、写入和订阅见页面资源。
开发环境能打开不代表发布包包含页面资源。插件和应用构建会编译声明的源码入口、使用生产依赖条件并生成动态类型资产; 本地源码包无需预先生成 Workbench 的 dist。发布前检查 Content 和 React 制品。 在线检查使用现有实例的开发控制台,隔离回归使用测试宿主。
认证、Shell 托管和资源部署属于宿主接线,见自定义 Workbench Host,不要放进插件的页面声明。
最后更新于