SAPUI5 - 格式化程序功能不起作用

时间:2013-11-13 10:46:45

标签: javascript html5 sapui5

  var addressTxt = new sap.ui.commons.Label({
                id : 'addressTxt',
                text : {
                    parts : [
                             {path : 'Street'},
                             {path : 'PostalCode'},
                             ],
                    formatter : function(Street,PostalCode){
                        var text = "";
                        if(Street)  text = Street+ ",";
                        if(PostalCode) text += PostalCode +","

                        return text;
                    }        
                }
                        });

我使用formatter函数在这里将两个元素连接到一个文本字段,但参数的值总是为null。我做错了什么?

1 个答案:

答案 0 :(得分:3)

在这里:http://jsbin.com/openui5-HTML-templates/82/edit?html,output

认为你的主要错误是没有附加对象和'path'的构建的parts数组。它直接采取路径。此外,只要路径是模型内部的绝对路径,就需要以'/'开头:

text : { 
    parts : [ '/street', '/postalCode' ],
    formatter : function(street, postalCode) {
        var text = "";
        if (street) text = street +",";
        if (postalCode) text += postalCode;
        return text;
    }
}

在此处查找有关文档中计算字段的更多详细信息: https://openui5.hana.ondemand.com/#docs/guide/CalcFields.html