一些SAP UI5的控件无法按照预期渲染的错误分析方法和解决方案
我在index.html里写了下面这段代码:
'var oButton1 = new sap.m.Button({text : "Button",tooltip : "This is a test tooltip",press : function() {alert('Alert from ' + oButton1.getText());}});oButton1.placeAt("content");'
但是在服务器上运行这个index.html,发现在正式模式下遇到下面这个错误消息:
“Uncaught TypeError: Cannot read property ‘Button’ of undefined”
但奇怪的是,在调试模式下是没问题的。
处理此类问题的经验是,一般此类涉及到在debug mode能工作(不能工作), 但是正常情况下不能工作(能工作)的issue,不管任何语言,都和runtime执行时序有关。
这个问题的root cause是,在new sap.m.Button时,sap.ui.core, sap.m还没有被load下来,执行new sap.m.Button这句就会报错,找不到。具体如下:
(1) 为什么非debug模式下,sap.ui.core和sap.m没有被load下来呢?
非debug模式下,会根据preload标识决定load是同步还是异步,这里设置的是async:
所以,在new sap.m.Button时,sap.ui.core, sap.m还没有被load下来。
如果preload被设置为 sync ,就会看到button被正常render。
(2) 为什么debug模式下,new sap.m.Button时,sap.ui.core和sap.m已经被load下来呢?
debug模式下,会使用requireModule load lib:
不会根据preload标识决定load是同步还是异步:
这个issue可以引申出另一个知识点,如果我就要求data-sap-ui-preload=“async”,有没有办法保证在非debug mode下,每次运行应用仍然成功呢?
另一个问题:这个bootstrap的id能改成其他比如"helloWorld"么?为什么?
因为已经Src已经满足满足预期的正则表达式,执行不到下面的分支了。
一些SAP UI5的控件无法按照预期渲染的错误分析方法和解决方案相关推荐
- SAP UI5 应用开发教程之六十六 - 基于 OData V4 的 SAP UI5 表格控件如何实现删除功能试读版
一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 应用开发教程之一:Hello World SAP UI5 应用开发教程之二:SAP U ...
- SAP UI5 应用开发教程之六十五 - 基于 OData V4 的 SAP UI5 表格控件如何实现创建,编辑和保存功能
本教程前几个步骤,我们已经用 SAP UI5 table 控件开发了一个包含 User 列表的应用,并且支持了根据 LastName 字段进行查询,以及排序的操作. SAP UI5 应用开发教程之六十 ...
- SAP UI5 应用开发教程之六十四 - 基于 OData V4 的 SAP UI5 表格控件如何实现 filter(过滤) 和 sort(排序)功能试读版
一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 应用开发教程之一:Hello World SAP UI5 应用开发教程之二:SAP U ...
- SAP UI5 应用开发教程之六十四 - 基于 OData V4 的 SAP UI5 表格控件如何实现 filter(过滤) 和 sort(排序)功能
本教程的上一个步骤,我们学习了如何基于 OData V4 开发一个最简单的使用了 Table(表格)控件的 SAP UI5 应用. SAP UI5 应用开发教程之六十二 - 基于 OData V4 的 ...
- SAP UI5 应用开发教程之六十二 - 基于 OData V4 的 SAP UI5 表格控件使用方法介绍试读版
一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 应用开发教程之一:Hello World SAP UI5 应用开发教程之二:SAP U ...
- SAP UI5 应用开发教程之六十 - SAP UI5 地图控件的一些高级用法试读版
一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 应用开发教程之一:Hello World SAP UI5 应用开发教程之二:SAP U ...
- SAP UI5 应用开发教程之五十六 - SAP UI5 树控件(tree)的开发试读版
一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 应用开发教程之一:Hello World SAP UI5 应用开发教程之二:SAP U ...
- SAP UI5 初学者教程之十一 :SAP UI5 容器类控件 Page 和 Panel 试读版
一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 初学者教程之一:Hello World SAP UI5 初学者教程之二:SAP UI5 ...
- 基于 OData 模型和 JSON 模型的 SAP UI5 表格控件行项目的添加和删除实现
这是 Jerry 2021 年的第 62 篇文章,也是汪子熙公众号总共第 339 篇原创文章. 龟虽寿曹操神龟虽寿,犹有竟时:腾蛇乘雾,终为土灰.老骥伏枥,志在千里:烈士暮年,壮心不已.盈缩之期,不但 ...
最新文章
- 第三章 用检验控件执行表单的验证
- Activity和ListActivity的区别
- 【NLP】NLP重铸篇之Fasttext
- IE9以及IE9以下,无法执行innerHTML这一操作的解决方法
- 【处理手记】Configuration system failed to initialize异常的另类原因
- JVM类加载机制_字节码执行引擎_Java内存模型
- 如何通过使用fiddler对安卓系统设备抓包总结
- Google ZXing系列讲解(二)——生成WIFi二维码
- filter java 意思_在JAVA中filter有什么作用?
- 软著注销流程 软件著作权撤销 操作流程
- 木瓜移动每日快讯0511:谷歌Chrome引入新隐私功能fenced frame
- python算法 之 猜词游戏
- 【MATLAB小游戏】养鱼
- Trunk技术需求与应用
- PatchMatch分析
- TableLayout表格布局详解
- xsd 和 wsdl
- 山药粥营养价值好处有哪些 山药粥的功效与作用
- C语言I博客作业04
- http的安装(编译安装)
热门文章
- 算法与数据结构(part4)--顺序表
- 今日代码(200612)--数据录入(python+mysql)
- TypeScript class 的静态成员变量
- SAP ABAP 编程语言里允许哪些特殊字符作为变量名的一部分?
- 如何查看 SAP Fiori Elements List Report Table 都支持哪些设置
- SAP 3D visual enterprise viewer 9.0 的下载方式
- Angular jasmine单元测试框架spied method的调用记录数据结构
- 如何处理Angular项目在Visual Studio Code打开报关于@Decorators的警告信息
- Windows环境下,如何在Docker里运行SAP UI5应用
- JavaScript ES6对Proxy的原生支持的一个例子