在显示 javascript 之前格式化绑定 属性
formatting bound property in javascript before it is displayed
我正在尝试将 JSON 日期格式化为 JavaScript 日期,以便更好地显示它。原始日期来自一个 JSON-object,它看起来像这样:
{
"name": "foo",
"num": "1",
"date": "\/Date(1367539200000)\/"
}
后面应该显示JSON个元素的地方是一个SAPUI5对象头:
objectHeader = new sap.m.ObjectHeader({
title: "{/name}",
number: "{/num}",
attributes: [
new sap.m.ObjectAttribute({
text: "{/date}"
})
]
});
因为 JSON 对象通过
绑定到对象头
dataModel.setData(json)
objectHeader.setModel(dataModel)
值已正确替换。但我希望将日期正确格式化为更易读的格式,而不是在我的网站上看到 /Date(1367539200000)/
。我试过
new sap.m.ObjectAttribute({
text: new Date(parseInt("{/date}".substr(6))).toLocaleString('de');
})
但是失败了 'Invalid Date'。将 JSON 日期格式化为模型绑定中的 Javascript 数据对象的正确语法是什么?
您可以使用 formatter 为您做到这一点。好处是你可以适当的使用数据绑定,所以你的控件会在模型改变的时候自动更新。
new sap.m.ObjectAttribute({
text: {
parts: [
{path: "/date"}
],
formatter: function(date){
//do whatever you want
return /* the value you want to have as result */;
}
}
})
我正在尝试将 JSON 日期格式化为 JavaScript 日期,以便更好地显示它。原始日期来自一个 JSON-object,它看起来像这样:
{
"name": "foo",
"num": "1",
"date": "\/Date(1367539200000)\/"
}
后面应该显示JSON个元素的地方是一个SAPUI5对象头:
objectHeader = new sap.m.ObjectHeader({
title: "{/name}",
number: "{/num}",
attributes: [
new sap.m.ObjectAttribute({
text: "{/date}"
})
]
});
因为 JSON 对象通过
绑定到对象头dataModel.setData(json)
objectHeader.setModel(dataModel)
值已正确替换。但我希望将日期正确格式化为更易读的格式,而不是在我的网站上看到 /Date(1367539200000)/
。我试过
new sap.m.ObjectAttribute({
text: new Date(parseInt("{/date}".substr(6))).toLocaleString('de');
})
但是失败了 'Invalid Date'。将 JSON 日期格式化为模型绑定中的 Javascript 数据对象的正确语法是什么?
您可以使用 formatter 为您做到这一点。好处是你可以适当的使用数据绑定,所以你的控件会在模型改变的时候自动更新。
new sap.m.ObjectAttribute({
text: {
parts: [
{path: "/date"}
],
formatter: function(date){
//do whatever you want
return /* the value you want to have as result */;
}
}
})