javascript - 在显示 JavaScript 中的绑定(bind)属性之前对其进行格式化

标签 javascript json model-binding sapui5 date-formatting

我正在尝试将 JSON 日期格式化为 JavaScript 日期,以便以良好的方式显示它。原始日期来自 JSON 对象,如下所示:

{
    "name": "foo",
    "num": "1",
    "date": "\/Date(1367539200000)\/"
}

稍后应显示 JSON 元素的位置是 SAPUI5 对象 header :

objectHeader = new sap.m.ObjectHeader({
    title: "{/name}",
    number: "{/num}",
    attributes: [
        new sap.m.ObjectAttribute({
            text: "{/date}"
        })
    ]
 });

由于 JSON 对象通过以下方式绑定(bind)到对象 header

dataModel.setData(json)
objectHeader.setModel(dataModel)

值已正确替换。但我希望将日期正确格式化为更易读的格式,而不是看到 /Date(1367539200000)/在我的网站上。我尝试过

new sap.m.ObjectAttribute({
    text: new Date(parseInt("{/date}".substr(6))).toLocaleString('de');
})

但是由于“日期无效”而失败。将 JSON 日期格式化为模型绑定(bind)中的 Javascript 数据对象的正确语法是什么?

最佳答案

您可以使用 formatter为你做到这一点。优点是您可以正确使用数据绑定(bind),因此您的控件将在模型更改时自动更新。

new sap.m.ObjectAttribute({
    text: {
        parts: [
            {path: "/date"}
        ],
        formatter: function(date){
            //do whatever you want
            return /* the value you want to have as result */;
        }
    }
})

关于javascript - 在显示 JavaScript 中的绑定(bind)属性之前对其进行格式化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27982279/

相关文章:

asp.net-mvc - 将我的自定义模型绑定(bind)到我的 POST Controller

javascript - 用于从 url 中提取不带扩展名的文件名的正则表达式

javascript - 从插件发送消息到表单不适用于空值

javascript - mongodb 从所有文档中获取所有子文档

javascript - 从 previousElementSibling 获取隐藏的输入值

ios - 为什么 "data"不是字典

PHP/MySQL : SyntaxError: JSON. 解析:JSON 数据第 1 行第 1 列出现意外字符

jquery - MVC中的ModelBinding参数列表

c# - MVC 空查询字符串参数奇怪的行为

javascript - 如何使用 Xcode/Instruments/Time Profiler 分析 React Native 源代码