在 SAP UI5 开发现场,经常会听到同事抱怨:Link 里面再弹个 Popover
这事总写重复代码。其实只要为 SmartField
补上一点点注解,就能让它自动长出 SmartLink
的翅膀,在 显示模式 下自行渲染成超链接,并在点击时弹出带有 跨应用导航 的对话框。本文基于官方 Step 3 – Smart Field with Smart Link 示例,结合项目经验,系统讲透两大控件如何联袂配合、需要哪些 OData 注解、又该怎样在真实业务里落地,并给出可直接运行的示范代码。
背景与动机
在典型的 Fiori 页面里,SmartTable
、ObjectPage
等高阶控件通过 SmartField
渲染列表列或表单字段。如果某列既是纯文本又要支持 跳转到其他应用,往往会写成 sap.m.Link
并手动为 press
事件绑定路由。这样做不仅样板代码多,而且难以保持统一体验。SmartLink
控件正是为了解决这一痛点而生:它根据 语义对象(Semantic Object) 弹出导航 Popover,并可自动读取 Fiori Laun