如何在项目模板中添加IconTabSeparator?

2020-09-05 17:23发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我有一个带有json视图的sap...

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

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


我有一个带有json视图的sapui5应用。 下面是json视图的代码

json视图如下所示

"节":[
   {
     " id":" idMenuButtonSection",
     " subSections":[
       {
         "主要":[
           {
             " Type":" sap.m.IconTabBar",
             " headerMode":"内联",
             " headerBackgroundDesign":" {widgetModel>/headerBackgroundDesign}",
             "项目":[
               {
                 " path":" widgetModel>/filters",
                 "模板":{
                   " Type":" sap.m.IconTabFilter",
                   " showAll":" {widgetModel> showAll}",
                   " enabled":" {widgetModel> enabled}",
                   " text":" {widgetModel> text}",
                   " icon":" {widgetModel> icon}",
                   " iconColor":" {widgetModel> color}",
                   " count":" {widgetModel> count}",
                   "内容":[
                     {
                       " Type":" sap.m.Button",
                       " text":" {widgetModel> text}"
                     }
                   ]
                 }
               }
             ]
           }
         ]
       }
     ]
   }
 ] 

数据绑定如下

" widgetModel":{" headerBackgroundDesign":"透明","过滤器":[{" text":"发布"," count":" 9"," showAll":true},{" text":  "初始时间","颜色":"默认","启用":true,"计数":1," icon":" sap-icon://appointment-2"},{" text":"选项1  "," color":"默认"," count":" 2"," enabled":是," icon":" sap-icon://appointment-2"},{" text":"选项2"  ," count":" 3"," color":"正"," enabled":是," icon":" sap-icon://appointment-2"},{" text":"选项3",  " count":" 3"," color":"默认"," enabled":假," icon":" sap-icon://appointment-2"}]} 
,输出类似于附件中的。 现在,我想添加IconTabSeparator。 如何在过滤器中添加它?
 

(12.4 kB)
付费偷看设置
发送
8条回答
SKY徐
1楼 · 2020-09-05 18:11.采纳回答

根据我的研究,扩展控制器是对此的最佳解决方案。

我在元数据中创建了一个称为分隔符的属性。

我在其中添加了" onBeforeRendereding"事件委托和以下代码。

'onBeforeRendering':函数():void {
让items = this.getAggregation('items');
让itemsLength = items.length-1,
j = 1;
if(itemsLength> 0){
for(let i = 0; i this.insertAggregation('items',
new sap.m.IconTabSeparator({icon:this。 getSeparator()}),
j,true);
j = j + 2;
}
}

}

这就是我解决问题的方式。 感谢大家的时间和帮助

小c菟菟
2楼-- · 2020-09-05 17:49

这不起作用。 我收到控制台错误。

您能给我建议一个解决方案吗?

Nir深蓝
3楼-- · 2020-09-05 18:03

嘿,桑托什·帕苏普努里,

我一直在研究这种情况,我认为在不指定静态"类型"的情况下无法在JS视图中动态绑定对象。 in .: sap.m.IconTabFilter。

主要原因是应用程序首次运行时,附加的模型没有数据,因此无法为" Type"(保留关键字)绑定任何值。 我观察到Type与其他字段相比有不同的行为,它的主要作用是将控件(实例化)的名称发送到ManagedObject类。

无论如何,我在一些博客中看到,一些开发人员已通过在JS视图实例化之后直接在控制器上编写绑定来纠正此问题。

我找到了下面的图表(它并不是您想要的东西),但是它可能对您的下一步发展有所帮助

KR,
亚瑟·席尔瓦(Arthur Silva)

SKY徐
4楼-- · 2020-09-05 18:03

对不起,我不能。 它是私人的,而且也很大!

clever101
5楼-- · 2020-09-05 17:57

你好桑托什,希望你一切都好。

尝试通过添加与IconTabBar项的类型相对应的字段来调整小部件模型。 例如:字段"类型",如下所示:

" widgetModel":{
 " headerBackgroundDesign":"透明",
 "过滤器":[{
                 " type":" sap.m.IconTabFilter",
 " text":"发布",
 " count":" 9",
 " showAll":true
 },{
                 " type":" sap.m.IconTabSeparator"
 },{
                 " type":" sap.m.IconTabFilter",
 " text":"初始时期",
 " color":"默认",
 "已启用":是,
 "计数":1
 " icon":" sap-icon://appointment-2"
 },{
                 " type":" sap.m.IconTabFilter",
 " text":"选项1",
 " color":"默认",
 " count":" 2",
 "已启用":是,
 " icon":" sap-icon://appointment-2"
 },{
 " text":" Option 2",
                 " type":" sap.m.IconTabFilter",
 " count":" 3",
 " color":"正",
 "已启用":是,
 " icon":" sap-icon://appointment-2"
 },{
 " text":" Option 3",
 " count":" 3",
 " color":"默认",
 "已启用":false,
 " icon":" sap-icon://appointment-2"
 }]
 } 

在JSON视图一侧,修改IconTabBar模板的属性"类型"以正确接收新的模型属性。

 ...
 "模板":{
 " Type":" {widgetModel> type}",
 " showAll":" {widgetModel> showAll}",
 " enabled":" {widgetModel> enabled}",
 " text":" {widgetModel> text}",
 " icon":" {widgetModel> icon}",
 " iconColor":" {widgetModel> color}",
 " count":" {widgetModel> count}",
 "内容":[{
 " Type":" sap.m.Button",
 " text":" {widgetModel> text}"
 }]
 }
 ... 

KR,
Arthur Silva

三十六小时_GS
6楼-- · 2020-09-05 17:52

您尝试过上面的代码吗?

当学会了学习
7楼-- · 2020-09-05 18:12

您是否愿意共享代码? 我想对开发/问题有更深入的了解。

KR,
Arthur Silva

一周热门 更多>