云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

轻量服务器_丽水市建设局网站_免费

小七 141 0

轻量服务器_丽水市建设局网站_免费

为什么不调用status的格式化程序框架如何解析xml视图以获取元数据,如格式化程序信息为什么Lifecyclestatus的格式化程序无法解析?当属性util在window.scn\u练习

最近我在练习用SAPUI5构建类似sapfiori的ui(这真是一个很棒的指南),我在练习3–格式化程序中遇到了问题。

我只是从指南中复制了源代码:

不幸的是,我的格式化程序statusText用于格式化母版页中的LifecycleStatus根本不在运行时调用:

令我惊讶的是,日期格式化程序的相同语法可以在详细页中完美地工作。为什么?

由于其他SCNER都没有抱怨过这个问题,所以我想我自己的代码一定有问题。所以我开始调试比较CreatedAt格式化程序的工作原理。

很快我就发现CreatedAt格式化程序是如何工作的。在运行时,首先从第22833行获取CreatedAt字段的原始值,并将其存储在变量oValue中,然后将其传递到第22838行的格式化程序中此.fn格式化程序"实际上指向格式化程序scn_exercise.util.Formatter格式.日期在我的代码中定义。

但是,对于失败案例,框架没有识别LifecycleStatus的任何格式化程序,企业应用系统,所以我的格式化程序根本没有被调用。

下面的屏幕截图包含了一个很好的xml视图解析入口点调试XML模板处理器-数据库.js包含解析xml源代码并相应创建UI5控件的实现。

从callstack我们知道它的方法handleChildren,createControls etc被递归调用来处理在xml视图中分层定义的控件。

最后我看到了下面的代码。执行第21082行后,将解析字段CreatedAt的格式化程序。

我将解释如何通过文本解析指向CreatedAt格式化程序的引用。

在for循环之前,云从,变量oObject指向全局窗口对象,因为这种情况下不存在上下文。

第一个for循环:I=0,执行第15162行,aNames[0]="scn\U练习",因此在此之后,物联网工程,oObject现在指向window.scn\u练习.

第二个for循环:i=1,aNames[1]=util,所以在第15162行之后oObject指向window.scn\u练习.util.

第三个循环:i=2,aNames[2]=Formatter,所以在第15162行之后oObject指向window.scn\u练习.实用格式化程序

第四回路:i=3,aNames[3]=日期,所以在第15162行之后,oObject指向window.scn\u练习.util.Formatter.date文件.Then quit for loop.

根据前面对CreatedAt的formatter的分析,我们可以很容易地找出错误所在。

对于Lifecyclestatus,下面没有名为"util"的属性window.scn\u练习, 相反,只有一个虚拟的"组件"。

只需比较CreatedAt的正确大小写,其中我们的所有格式化程序都存在于window.scn\u练习.

由于我在detail view的控制器中定义了格式化程序实现的用法:

jQuery.sap.require要求("scn_exercise.util.Formatter格式");

js文件通过AJAX下载,什么叫大数据云计算,下载成功后调用execModule:

js源代码通过eval执行:

util在window.scn\u练习:

然后我终于找到了根本原因:我忘了在主控制器中添加以下行。一旦我添加了这个,问题就消失了。

希望这个博客能给你一些提示,当你遇到格式化程序或xml视图解析问题时,自己解决问题

,物联网城市