我正在使用格式化程序函数作为String类型的日期。我想在验证后以yyyy/mm/dd
格式显示它,说如果值是"Unavailable"
,它应该显示Blank [View is rendering]。
否则,我应该以{{1}}格式显示它。因此,我对“时间”值进行了切片,并在调试器中返回了我期望的值,但视图未呈现。
其他格式化程序功能正在运行。使用切片功能后出现问题。
查看
YYYY/MM/DD
控制器
<Text text="{ path:'FORMULATIONDATE', formatter:'.getFormulation'}" wrapping="false" />
答案 0 :(得分:0)
考虑FORMULATIONDATE
是服务中的日期对象。
解决方案1:使用模型类型
<Text text="{path: 'FORMULATIONDATE', type: 'sap.ui.model.type.DateTime',
formatOptions: {pattern:'yyyy/mm/dd', UTC: true}}" /> <!--update your format -->
解决方案2:使用格式化程序
XML视图
<Text text="{path: 'FORMULATIONDATE', formatter: 'formatter.formatDate'}" />
Formatter.js
jQuery.sap.require("sap.ui.core.format.DateFormat");
formatter = {
formatDate: function(FORMULATIONDATE) {
var dateFormat = sap.ui.core.format.DateFormat.getDateInstance({pattern : "dd.MM.YYYY"});//this is the default format
if (FORMULATIONDATE == null) {
dateFormat = sap.ui.core.format.DateFormat.getDateInstance({pattern : "dd.MM.YYYY"});//update your format
}
var sFormatDate = dateFormat.format(FORMULATIONDATE);
return sFormatDate;
}
}
注意:如果FORMULATIONDATE
不是日期对象,则使用new Date(FORMULATIONDATE)