MIP DESKTOP · 扩展开发
页面与贡献点
把扩展能力放到应用入口、侧栏、工作台或个人中心。
先确定用户从哪里使用扩展,再选择贡献点。打开页面的入口与工作台直接显示的卡片是两种体验。
选择入口位置
| 贡献点 | 适合的内容 |
|---|---|
contributes.views 与 webviews |
可打开的扩展页面 |
contributes.applications |
工作台常用应用或应用中心中的入口 |
contributes.rail |
左侧侧栏中的固定入口 |
contributes.workbenchWidgets |
直接显示在工作台内容区的轻量卡片 |
contributes.userCenterPanels |
个人中心中的扩展面板 |
具体贡献点由目标 Desktop 版本决定。通过应用入口打开一个页面,不会自动生成工作台卡片或侧栏项。
声明基础页面
先建立包内 HTML,并在 Manifest 中保持一致的声明:
{
"permissions": ["webview"],
"contributes": {
"views": [
{
"id": "mip.example.notes.home",
"title": "便笺示例",
"type": "webview",
"entry": "webviews/home/index.html"
}
]
},
"webviews": {
"mip.example.notes.home": "webviews/home/index.html"
}
}
View ID 应属于当前扩展,入口实际存在且位于包内。页面资源加载失败时,优先检查入口映射和 HTML 中的相对地址。
工作台与侧栏
完整业务页面适合用应用入口打开;时钟、简短摘要、轻量待办等内容适合工作台卡片。需要长期固定位置时,再考虑侧栏贡献,避免所有扩展都占据一级导航。
应用入口、侧栏和卡片分别声明,不依赖修改宿主的菜单、路由或布局文件。按目标版本的贡献字段配置位置、排序和可见性,并验证入口过滤行为。
工作台卡片涉及原生组件时,还应满足对应权限和宿主支持要求;基础第三方扩展优先使用受控 WebView。
个人中心面板
个人中心由宿主负责整体布局。扩展通过支持的插槽贡献自身面板,而不是接管整页。读取必要用户与单位信息时仍需 identity.read。
只展示当前扩展负责的内容;不要访问其他面板的 DOM、宿主 Token 或其他扩展的配置。新增面板前确认所需贡献点已进入目标发行版。
验证启停行为
安装、启用、禁用、卸载或升级扩展后,检查应用入口、侧栏和工作台是否同步变化。入口失效、资源缺失或权限不足时应能正确隐藏或明确反馈。
不要求用户通过刷新整个 Desktop 来修复扩展入口。若入口没有出现,按 常见问题 检查贡献声明、状态与版本支持。
基础契约:Extension API 1.x;具体能力以目标 Desktop 发行版为准。