我一直在努力解决这个问题,我想知道是否有人会知道这里发生了什么。
使用JSON视图,该视图基本上是具有1列的表(使用概念证明)。该列必须显示日期,因此我将DatePicker用作模板并绑定到我的模型。看起来像这样:
{
"Type": "sap.ui.core.mvc.JSONView",
"content": [
{
"Type": "sap.ui.table.Table",
"id": "overviewTable",
"selectionMode": "Single",
"visibleRowCount": 3,
"selectionBehavior": "RowOnly",
"editable": false,
"enableColumnReordering": false,
"rows": {
"path": "/items",
"templateShareable": true
},
"columns": [
{
"Type": "sap.ui.table.Column",
"id": "MYPROPERTYID",
"hAlign": "Left",
"width": "100%",
"resizable": false,
"sortProperty": "MYPROPERTYID",
"filterProperty": "MYPROPERTYID",
"filterType": {
"type": "sap.ui.model.type.Date",
"formatOptions": {
"pattern": "MM/dd/yyyy"
}
},
"label": {
"Type": "sap.m.Label",
"text": "My property ID",
"design": "Bold"
},
"template": {
"Type": "sap.m.DatePicker",
"editable": false,
"value": {
"path": "MYPROPERTYID",
"type": "sap.ui.model.type.Date"
}
}
}
]
}
]}
在1.60上运行此应用程序可以呈现表格。我的后端有一些虚拟数据(基本上是1行数据),它可以完美地绑定并按原样显示数据。最重要的是,还有一组其他应用程序,它们遵循相同的顶部概述表,格式如下,详细信息,具有相同类型的绑定,对此我从未遇到过任何问题。我还注意到这是特定于DatePicker的东西。例如,如果我将模板更改为Input,则我的聚合绑定将起作用。
[编辑]我得到的错误如下:数据加载失败:错误:“ [对象对象]”对于元素sap.ui.table.Column的聚集“模板”无效
尝试处理此片段时发生错误:
{
"path": "MYPROPERTYID",
"type": "sap.ui.model.type.Date"
}
我的猜测是在1.60和1.71之间有所变化。据我所知,我一直在调查,只是希望有人知道发生了什么事,并可以节省几个小时。
[编辑]我将其范围缩小到1.63.1和1.64.1之间。如果您想在实际中看到此效果:https : //jsbin.com/medenuq/edit? html,console, output只需试一下各个版本,看看会发生什么。
任何想法将不胜感激。谢谢!
我打开了一张票,您可以在这里跟踪它:https : //github.com/SAP/openui5/issues/2972
那里的codeworrior很好地解释了回归的来源,以及如何解决该问题,直到发布正式补丁为止。我将在此处粘贴他的解决方案,这样,如果您只想要一个答案,就不必去那里:
"template": {
"Type": "sap.m.DatePicker",
**"ui5object": true, // <-- marker property**
"editable": false,
"displayFormat": "MM/dd/yyyy",
"valueFormat": "yyyyMMdd",
"value": {
"path": "Date",
"type": "sap.ui.model.type.String"
}
}
非常感谢Codeworrior的快速帮助,也感谢所有查看此文档并给出了想法的人。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句