你在这里。看看这个问题与其他知识怎样相连。
选择节点前往页面 · 展开后可留在地图中阅读
一个问题
surface:怎样把另一个资源或界面放进来?
surface 提供嵌入呈现的边界,连接资源或远端 AUP。
在一个界面中放入另一个资源视图时,需要知道来源、连接方式与能力约束。surface 注册描述支持 AFS 路径以及远端 AUP 连接。可嵌入不表示权限合并,也不保证所有子界面共享同一份状态。
先认识这些属性
renderConstraints 限定子视图可采用的呈现类型或尺寸。这里的 capabilities 是它的兼容别名,新配置优先用 renderConstraints;不要把这个属性当成资源读写权限。showStatus 控制连接状态提示。
connect、disconnect、error 描述连接与异常状态。它们不能代替业务操作自己的成功或失败结果。
读一个结构例子
以下摘自源码注册示例。它展示结构,未在本页运行;示例中的路径和动作需要应用提供。
{
"id": "afs-surface",
"type": "surface",
"src": "/modules/smart-home",
"props": {
"showStatus": true,
"renderConstraints": {
"primitives": [
"view",
"text",
"action",
"chart"
]
}
}
}例子从 /modules/smart-home 取得嵌入来源,并把呈现词汇限制为四种类型。这是在声明呈现范围,不表示这个路径已经可访问,也不把子界面的权限合并到父界面。连接指示正常,还需分别确认资源加载和具体动作结果。
检查一下理解
把一个子界面嵌入页面后,能否假设两者权限相同?
不能。嵌入边界仍需要明确来源、能力与访问权限。