用途:为 Blockbench(基于 Electron 桌面端与 Web PWA,使用 THREE.js 渲染、Vue 2 构建界面)开发 JavaScript 插件,实现命令、面板、对话框、自定义导入导出格式等扩展。
主要能力:通过 Plugin.register 注册插件,用 new Action() 创建可点击命令并加入菜单或工具栏,用 new Dialog() 构建表单对话框,用 new Panel() 添加 Vue 组件侧边栏面板,用 new Codec() 与 new ModelFormat() 实现自定义导入导出,用 Blockbench.on() 订阅事件。模型修改需用 Undo.initEdit() → 修改 → Undo.finishEdit() 包裹,并调用 Canvas.updateView() 刷新视图。
使用方式:插件放在 plugins/ 目录下,主文件 ID 须与文件名一致,可选 about.md 与 48x48 的 icon.png。onload() 中初始化组件,onunload() 中必须删除全部组件(action.delete()、panel.delete()、format.delete()、codec.delete()、Blockbench.removeListener()、css.delete())以防内存泄漏。THREE、Vue、JSZip、marked、Molang 为内置库,不应打包。TypeScript 可安装 blockbench-types。
适用场景:为 Blockbench 增加工具、面板、格式支持或自动化操作。
限制:资料未提供具体收费、价格、平台兼容范围与效果数据;插件需遵循其代码风格约定(类 PascalCase、方法 camelCase、属性 snake_case),并避免全局污染与重复打包内置库。