Javascript 列表的sapui5条件图标

Javascript 列表的sapui5条件图标,javascript,sapui5,Javascript,Sapui5,我找不到如何使列表中的项目基于模型的属性显示图标。我希望图标根据属性“answer”的不同而有所不同 在我看来,这就是代码: createContent: function(oController){ var self = this; this.oItemTemplate = new sap.m.StandardListItem({ title : "{title}", icon : self.getIcon("{answer}"),

我找不到如何使列表中的项目基于模型的属性显示图标。我希望图标根据属性“answer”的不同而有所不同

在我看来,这就是代码:

createContent: function(oController){
    var self = this;

    this.oItemTemplate = new sap.m.StandardListItem({
        title : "{title}",
        icon : self.getIcon("{answer}"),
        type : sap.m.ListType.Active,
        press: [oController.onListSelect, oController]
    });

    // etc..
},


getIcon : function(answer){
    alert(answer);
    // some logic here to return the icon based on property 'answer'
}

此代码的问题是属性“answer”没有传递给方法
getIcon
。相反,它只传递字符串
{answer}

,您可以使用格式化程序函数:

icon : {
    parts : ["answer"],
    formatter : function(answerValue){
        return self.getIcon(answerValue);
    }
}

我已经有一段时间没有使用sapui5了,但是IIRC应该可以使用getIcon函数中的
this.getProperty('answer')
。谢谢,我在“部件”上得到一个错误,说“answer is not defined”。我的错,它应该在引号之间。。。我已经更新了答案