简体中文
PWC 应用
约 495 字大约 2 分钟
2026-09-11
PWC 应用是自定义组件的一种类型,与普通自定义组件写法相同,区别在于需要通过 routes() 配置路由,将不同路径映射到对应的业务组件。
典型场景例如:
- 在平台内嵌入 AI 工作台、Agent 对话窗口
- 将多个自定义业务视图通过路由组织成一个完整的应用
入口文件结构
PWC 应用的入口文件需要导出一个对象,包含以下字段:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
isVue | boolean | ✅ | 固定为 true,声明为 Vue 组件类型 |
template | string | ✅ | 应用根节点模板,通常为一个全尺寸容器 |
isCache | boolean | — | 是否缓存应用实例,默认 false |
routes | Function | ✅ | 返回路由配置对象,key 为路由路径规则,value 为路由配置 |
destroy | Function | — | 应用销毁时的清理回调 |
routes 路由配置
routes() 返回一个对象,每个 key 为路径规则,支持路径参数(*param)。
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
component | Function | ✅ | 返回组件的工厂函数,只支持同步组件,不支持异步加载 |
注意
component 必须是同步返回组件的函数,不支持动态 import()。
示例
export default {
isVue: true,
template: '<div class="paasdev-app-container" style="width:100%;height:100%;"></div>',
isCache: true,
routes() {
return {
/**
* @description ShareAgent
*/
'shareagent(/=/*param)': {
component: () => Fx.getBizComponent('paasdev', 'AgentShareAgent').then((res) => res()),
},
};
},
destroy() {
$('.paasdev-app-container').off();
$('.paasdev-app-container').remove();
},
};路由路径规则
路径规则支持以下写法:
| 写法 | 说明 | 示例 |
|---|---|---|
| 固定路径 | 精确匹配 | 'shareagent' |
| 可选段 | 括号内部分可有可无 | 'shareagent(/=/*param)' |
| 通配参数 | *param 匹配任意值,可在组件内通过路由参数读取 | 'shareagent(/=/*param)' |
注意事项
component只支持同步组件,不能使用异步import()懒加载。destroy中需手动清理事件绑定和 DOM,避免内存泄漏。template建议保持全尺寸容器写法,由各路由组件自行控制内部布局。
