iap-frontend-sdk
v1.0.0
Published
云启千行平台同宿主部署前端扩展 SDK
Readme
IAP Frontend SDK
用于开发与云启千行平台同宿主部署的 Vue 2 页面扩展。扩展独立构建后作为静态资源随平台部署,并在平台运行时初始化完成后加载,不通过 iframe 或 postMessage 运行。
import { createIapFrontendSdk } from "@inspur-iap/frontend-sdk"
import OrderList from "./OrderList.vue"
const sdk = createIapFrontendSdk({
pluginCode: "order-extension"
})
sdk.pages.register({
code: "order-extension-list",
title: "订单列表",
component: OrderList
})
await sdk.ready()
const context = await sdk.context.get()
const userToken = await sdk.auth.getUserToken()
await sdk.navigation.openMenu("menu-id")平台菜单的 view 配置为已注册的页面编码(示例为 order-extension-list)后,会在平台标签页区域直接渲染该组件。
扩展构建产物部署在 frame.html 同级的 frontend-extensions/ 目录。宿主从 frontend-extensions/manifest.json 读取扩展:
{
"extensions": [
{
"pluginCode": "order-extension",
"scripts": ["order-project/js/order-extension.umd.min.js"],
"styles": ["order-project/css/order-extension.css"]
}
]
}脚本和样式必须与平台同源,并位于 frontend-extensions/{projectName}/ 目录内。扩展入口必须在加载时完成页面注册。
扩展与平台运行在同一页面和同一来源,浏览器层面能够访问宿主 localStorage。业务代码不应依赖 _token、_userInfo 等内部键名,应通过 SDK 获取稳定上下文和动态 Token。扩展属于平台进程内的受信任前端代码,必须经过依赖、XSS 和权限审核。
