Sapui5 sap.m.List项目在运行时删除属性

Sapui5 sap.m.List项目在运行时删除属性,sapui5,Sapui5,根据条件,我想从自定义列表中删除其中一个元素(在img中突出显示)。这是我做的代码。这是正确的方法吗? 如果我将null传递给格式化程序,默认情况下,作为头像图标,它会显示一个,并且该图标不应显示为null值。 视图::` 控制器 onUpdateListFinished: function (oEvent) { // var sonarList = this.getView().byId("sonarRepId"); // var items

根据条件,我想从自定义列表中删除其中一个元素(在img中突出显示)。这是我做的代码。这是正确的方法吗? 如果我将null传递给格式化程序,默认情况下,作为头像图标,它会显示一个,并且该图标不应显示为null值。 视图::`


控制器

onUpdateListFinished: function (oEvent) {
            // var sonarList = this.getView().byId("sonarRepId");
            // var items = sonarList.getItems();
            // for (var i = 0; i < items.length; i++) {
            //  var oAvatarIcon = oEvent.getSource().getItems()[i].mAggregations.content[0].mAggregations.items[1].mAggregations.items[0].mAggregations.items[1];
            //  if(oAvatarIcon){
            //  var delItemColor = oAvatarIcon.getProperty("backgroundColor");
            //  if (delItemColor === "Accent10") {
            //      oAvatarIcon.destroy();
            //  }
            // }
            // }

        }
onUpdateListFinished:函数(oEvent){
//var sonarList=this.getView().byId(“sonarRepId”);
//var items=sonarList.getItems();
//对于(变量i=0;i
隐藏化身控件,而不是销毁它。你可以用这个

表达式绑定:

visible="{= ${sonarMetrics>state_value} !== null}" 
化身控件:

<Avatar id="idAvatar" visible="{= ${sonarMetrics>state_value} !== null}" 
initials="{parts : [ 'sonarMetrics>state_value'], formatter: '.formatter.formatNumeric'}" 
displaySize="XS" backgroundColor="{parts : [ 'sonarMetrics>state_value'], formatter: '.formatter.formatIconColor'}"/>

alexP提到了ExpressionBinding,它是准确的

我想建议下面的处理方法更有效,可以处理更多的测试用例

visible=“{=!!${sonarMetrics>状态值}”

<Avatar id="idAvatar" visible="{= ${sonarMetrics>state_value} !== null}" 
initials="{parts : [ 'sonarMetrics>state_value'], formatter: '.formatter.formatNumeric'}" 
displaySize="XS" backgroundColor="{parts : [ 'sonarMetrics>state_value'], formatter: '.formatter.formatIconColor'}"/>