【发布时间】:2021-02-21 09:41:13
【问题描述】:
大家好,
我有以下数据结构:
[ {
"supplierCode": "supplier1",
"supplierDesc": "supplier1Desc",
"pos": [ {
"poNum": "11111",
"materialNum": "matNum11",
"materialDesc": "matDesc11"
},
{ "poNum": "11112",
"materialNum": "matNum22",
"materialDesc": "matDesc22"}
] },
{"supplierCode": "supplier2",
"supplierDesc": "supplier2Desc",
"pos": [ {
"poNum": "22222",
"materialNum": "matNum11",
"materialDesc": "matDesc11"},
{"poNum": "22223",
"materialNum": "matNum22",
"materialDesc": "matDesc22"}]
}
]
我的任务是通过 pos 数组中的属性过滤 JSON 模型中的数据。
我尝试了以下方法:
myList = this.getView().byId("myList");
var binding = myList.getBinding("items");
if (!query) {
binding.filter([]);
} else {
binding.filter([new sap.ui.model.Filter([
new sap.ui.model.Filter("supplierCode", sap.ui.model.FilterOperator.Contains, query),
new sap.ui.model.Filter("supplierDesc", sap.ui.model.FilterOperator.Contains, query),
new sap.ui.model.Filter("pos/materialDesc", sap.ui.model.FilterOperator.Contains, query)
], false)]);
}
没有运气。
另外,我发现可以使用 ODataModel,但我没有找到任何关于 JSONModel 的信息。
这样的过滤可以做吗?
谢谢。
【问题讨论】:
-
您可以构建自己的过滤功能。在
Filter对象的构造函数中查看属性test:sapui5.hana.ondemand.com/#/api/…
标签: sapui5 filtering jsonmodel