关于 SAP UI5 应用 render2 实例异步创建的编码实现
2023-06-13 09:18:08 时间
本文是笔者这篇教程的详细解释:
默认的 async 标志位为 false:
默认的 renderer 名称为 Fiori2:
提取出 renderer 的配置:
只有一个 shell-home 的配置。
错误消息从这里报出来的:
Log.error("sap.ushell.Container.createRenderer() should always be called with bAsync:true.");
return getRendererInstance(sModule);
更改一下 index.html
的配置:
sap.ui.getCore().attachInit(() => sap.ushell.Container.createRenderer("fiori2", true).placeAt("content"))
然后就进入 async 分支了:
返回的是一个 Promise 对象:
改成这段代码:
果不其然,Promise resolve 之后,回调函数里返回的是一个 renderer 实例:
修改成如下代码后,问题消失:
sap.ui.getCore().attachInit(() => sap.ushell.Container.createRenderer("fiori2", true).then(
(oRenderer) => {
oRenderer.placeAt("content");
}
));
sap.ui.base.Object.extend是SAP UI5中的一种继承方式,用于创建一个新的对象类型,并基于现有对象类型创建子类型。它允许在创建自定义对象时继承现有对象的属性和方法,并扩展它们以满足特定需求。
使用sap.ui.base.Object.extend可以创建自定义对象类,这些类可以在SAP UI5应用程序中用作模型、控制器、视图等组件。这种方式还允许开发人员通过将属性和方法添加到新对象类中来扩展现有类,从而满足特定的需求。这样做可以避免在创建新类时重复编写相同的代码,从而提高代码的可重用性和可维护性。
使用sap.ui.base.Object.extend的基本语法如下:
var MyObject = sap.ui.base.Object.extend("my.namespace.MyObject", {
metadata : {
properties : {
// define properties here
},
events : {
// define events here
},
methods : {
// define methods here
}
},
constructor : function() {
// define constructor here
},
// define additional methods here
});
上述代码创建了一个名为my.namespace.MyObject的新对象类型,并基于sap.ui.base.Object类创建了一个子类型。新类型可以在metadata属性中定义属性、事件和方法,并可以在constructor函数中初始化对象。创建新对象类型后,可以使用以下语法创建对象实例:
var myObject = new my.namespace.MyObject();
相关文章
- SAP UI5 Form 表单 Column Layout 下的 Column 个数分配问题
- SAP Fiori Elements SmartLink 创建实例的单步调试
- SAP UI5 sap.ui.layout.Grid 控件宽度百分比的设置原理
- SAP License:实例讲解SAP与金税接口
- SAP UI5 应用中的 sap.ui.require.toUrl 使用场景
- SAP UI5 sap.ui.Device.media 的使用介绍
- SAP Web IDE环境搭建 – 详细指导
- 使用 SAP CRM Application Enhancement Tool(AET) 创建扩展字段
- 安装SAP,Linux获台前瞻未来(linux安装sap)
- SAP 常用表详解编程语言
- SAP 锁机制详解编程语言
- SAP中的密码输入框详解编程语言
- SAP OBYC自动记账的实例说明 +VALUE STRING详解编程语言
- SAP-MM-移动类型解析之收货03–退货详解编程语言
- 在SAP中设计自动刷新的报表代码 (又一例)详解编程语言
- abap如何查找SAP示例程序详解编程语言
- SAP监控常用TCODE详解编程语言
- SAP vs Oracle:差异点与解析(sap和oracle的区别)
- 对比SAP VS Oracle: 哪个更适合你?(sap与oracle)
- Oracle与SAP在仓储领域的联姻(仓库oracle和sap)
- 数据库解决方案如何使用SAP创建Redis数据库(sap怎么创建redis)
- Oracle与SAP金蝶谁更具竞争力(oracle sap金蝶)
- Oracle和SAP教程一步一步学习(oracle sap教程)
- Oracle 与 SAP深度对比分析(oracle sap对比)