SAP UI5 formatter的工作原理-阿里云开发者社区

开发者社区> -开发者助手-> 正文

SAP UI5 formatter的工作原理

简介: SAP UI5 formatter的工作原理
+关注继续查看

Recently I am following the exercise Building SAP Fiori-like UIs with SAPUI5( it is really a fantastic guide

image.pngimage.pngWhy the formatter for status is not called at all

Since none of other SCNers has complained about this issue, so I assume there must be something wrong in my own code. So I began to debug to compare why formatter for CreatedAt works.


Soon I found out how formatter for CreatedAt works. In the runtime, firstly the raw value of field CreatedAt is fetched from line 22833 and stored in variable oValue, and then passed to its formatter in line 22838.


The “this.fnFormatter” actually points to the formatter scn_exercise.util.Formatter.date defined in my code.

image.pngHow does framework parse xml view to get metadata such as formatter information

The screenshot below contains a good entry point for xml view parse debugging.The XMLTemplateProcessor-dbg.js contains the implementation to parse xml source code and create UI5 control accordingly.

image.pngFinally I reached the code below. After line 21082 is executed, the formatter for field CreatedAt will be parsed.

image.pngI will explain how the reference pointing to my formatter for CreatedAt is parsed via text.

before the for loop, variable oObject points to the global window object, since no context exists in this case.


The first for loop: i = 0, execute line 15162, aNames[0] = “scn_exercise”, so after that oObject now points to window.scn_exercise.

The secondfor loop: i = 1, aNames[1] = util, so after line 15162 oObject points to window.scn_exercise.util.


The third loop: i = 2, aNames[2] = Formatter, so after line 15162 oObject points to window.scn_exercise.util.Formatter

The fourth loop: i = 3, aNames[3] = date, so after line 15162 oObject points to window.scn_exercise.util.Formatter.date.Then quit for loop.

image.pngimage.pngWhen the attribute util become available under window.scn_exercise

Since I have defined the usage of formatter implementation in detail view’s controller:

jQuery.sap.require(“scn_exercise.util.Formatter”);


the js file will be downloaded via AJAX and execModule is called on it after a successful download:

image.pngimage.png


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
10004 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,大概有三种登录方式:
2958 0
SAP Fiori Elements里Smart Link工作原理介绍
SAP Fiori Elements里Smart Link工作原理介绍
16 0
SAP UI5 jQuery.sap.getModulePath 的工作原理
SAP UI5 jQuery.sap.getModulePath 的工作原理
9 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
10880 0
SAP Commerce SmartEdit 如何同 SAP Spartacus 协同工作
SAP Commerce SmartEdit 如何同 SAP Spartacus 协同工作
15 0
如何自动完成登录 SAP BTP workflow(工作流) 管理应用 Launchpad 所需的设置
如何自动完成登录 SAP BTP workflow(工作流) 管理应用 Launchpad 所需的设置
9 0
SAP Fiori Elements里Smart Link工作原理介绍
SAP Fiori Elements里Smart Link工作原理介绍
7 0
SAP UI5 WebIDE里使用Mock数据的工作原理介绍
Created by Wang, Jerry, last modified on Feb 02, 2015
5 0
使用 mock 数据在本地运行 SAP Fiori Elements 应用的工作原理
使用 mock 数据在本地运行 SAP Fiori Elements 应用的工作原理
12 0
2450
文章
0
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载