[SAPUI5]使用extensionAPI扩展Fiori Elements对象页面

2020-08-14 08:27发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)您好,UI5-Developer...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


您好,UI5-Developers

我用Fiori Elements创建了一个列表报表应用程序,然后使用注释建模器进行了一些更改。
现在,我正在尝试为对象页面实现标题扩展,如下所示:

视图应实现URLHelper库,并绑定应用程序使用的odata模型的实际数据。 ( https://ui5.sap.com/#/api/sap.m。 URLHelper )。 屏幕截图显示了API中的示例以及JSONModel草案。

我的意图是将视图绑定到对象页面的上下文,以便我可以绑定该对象的邮件地址,并使用列表作为超链接邮件地址的方式。
现在,我基本上想知道如何在扩展控制器中使用我的odata模型。

为此,我想到了使用类似这篇文章的extensionAPI来声明 /img/questions/12690603/how-can-i-get-the-model-data-of-the-object -page-in.html 。 但是,一开始,尝试使用extensionAPI对象时,我得到以下错误代码:

该参考文献似乎并没有错,因为我正在开发工具中的源代码下达到API定义的功能。

控制器代码:

 sap.ui.define([
 " sap/ui/core/mvc/Controller"," sap/ui/model/json/JSONModel"," sap/suite/ui/generic/template/ObjectPage/extensionAPI/ExtensionAPI"
 ],函数(控制器,JSONModel,extensionAPI){
 "使用严格";

 return Controller.extend(" namespace.ext.controller.CommunicationExtension",{
 onInit:函数(evt){
 var oModel = new JSONModel({
 " SupplierCollection":[{
 "电话":" + 49 6227 747474",
 " Sms":" +49 173 123456",
 "电子邮件":" john.smith@sap.com"
 }]
 });
 this.getView()。setModel(oModel);
 },
 onAfterRendering:function(evt){
//引发类型错误-> this.extensionAPI未定义 this.extensionAPI.getViewId(); }

非常感谢您的帮助。

(8.2 kB)
2条回答
callcenter油条
2020-08-14 08:58 .采纳回答

你好马塞尔,

执行突破代码时,有多个控制器可以进入上下文。 例如,如果您有View扩展名,则可以将一个控制器与此View扩展名关联。 这是纯粹的UI5逻辑,Fiori元素对此不起任何作用。 您还可以使用扩展控制器来控制LR/ALP/OP组件的标准视图。 extensionAPI对象与标准组件扩展控制器关联。 从您的控制器扩展代码来看,我看来是View扩展,这就是为什么您没有此参考。

此致

Vinod

一周热门 更多>