主详细信息:在过滤器选项卡上显示元素数

2020-09-08 10:14发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我正在学习使用han...

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

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


嗨,

我正在学习使用hana云平台创建fiori应用程序。 我已经创建了一个fiori主细节应用程序,并指定了我的OData模型以及模拟数据(我没有后端服务)。

该应用程序非常简单,母版包含一组元素,其详细信息显示在两个选项卡的"详细信息"视图中。 一个选项卡包含常规信息,第二个选项卡包含一个表。 第二个选项卡的count属性必须包含表的行数。

到目前为止,我一直在尝试获取行数(Detail.controller.js):

 this.byId(" __ table0")。getItems()。length
 

并将其放入标签过滤器的count属性:

 this.byId(" iconTabFilter2")。setCount(this.byId(" __ table0")。getItems()。length);
 

这段代码可以解决问题……但我不知道将其放在哪里。 我把它放在控制器中每个函数的末尾,但是当我测试时,结果是错误的。

示例:我在母版中有两个元素,第一个元素的表包含4行,第二个元素包含0行。两个选项卡的计数均显示为0。 当我使用控制台日志时,这就是我得到的(我将日志放在控制器中每个函数的末尾。左侧的数字是表中元素的数量):

应用首次启动时,将选择第一个主元素。

 0 getEventBus
 0 getRouter
 0 onInit
 0 onRouteMatched
 0 onRouteMatched
 0 getEventBus
 0 fireDetailChanged
 0 fireDetailChanged
 0 getEventBus
 0 onMasterLoaded
 

当我选择母版中的第二个元素时:

 4 onRouteMatched
 4个getEventBus
 4 fireDetailChanged
 4 fireDetailChanged
 0 getEventBus
 0 onRouteMatched
 

当我返回到选择母版中的第一个元素时:

 0 onRouteMatched
 0 getEventBus
 0 fireDetailChanged
 0 fireDetailChanged
 0 getEventBus
 0 onRouteMatched
 
6条回答
compass1988
2020-09-08 11:19 .采纳回答

我认为我找到了执行此操作的正确方法:

 this.byId(" iconTabFilter2")。setCount(this.byId('__ table0')。getMaxItemsCount());
 

一周热门 更多>