Data binding 在XML视图中使用筛选数据的SAPUI5列表绑定
我希望你做得很好 目前,我正在尝试在控制器的oninit事件中将筛选数据绑定到xml视图中的列表控件odata服务url如下 ?$filter=VendorID%20eq%201 我使用了下面的代码Data binding 在XML视图中使用筛选数据的SAPUI5列表绑定,data-binding,sapui5,jsonmodel,Data Binding,Sapui5,Jsonmodel,我希望你做得很好 目前,我正在尝试在控制器的oninit事件中将筛选数据绑定到xml视图中的列表控件odata服务url如下 ?$filter=VendorID%20eq%201 我使用了下面的代码 var sListURI = "http://mikmo.mylocalhost.com/MIKMOWCFDataService.svc"; var oListModel = new sap.ui.model.odata.ODataModel(sListURI, false);
var sListURI = "http://mikmo.mylocalhost.com/MIKMOWCFDataService.svc";
var oListModel = new sap.ui.model.odata.ODataModel(sListURI, false);
var oListModelJson = new sap.ui.model.json.JSONModel();
oListModel.oHeaders = {
"DataServiceVersion": "2.0",
"MaxDataServiceVersion": "2.0"
};
oListModel.read("/view_VendorGroup", null, ["$filter=VendorID eq " + window.VendorID], null, function(oData, oResponse) {
oListModelJson.setData(oData);
oListModelJson.loadData(oData);
}, null);
//oListModelJson.bindList(sPath, [oContext], [aSorters], [aFilters], [mParameters])
oListModelJson.attachRequestCompleted(function(oData, oEvent) {
});
myList.setModel(oListModelJson, "VendorGroups");
在XML视图中
<List growing="true" growingThreshold="100" headerText="{i18n>businessareas}" id="lstVendorGroups">
<items>
<!--<ObjectListItem title="{VendorGroups>GroupName}" type="Active" press=".onItemSelected" /> -->
<StandardListItem id="stListItem" />
</items>
</List>
我需要知道的是如何将attachRequestCompleted方法中的列表项与数据绑定
提前感谢您需要绑定sap.m.List的聚合“项”。 我将在您的代码中修改以下内容:
oListModelJson.loadData(oData)代码>不是必需的,因为前一行代码是:oListModelJson.setData(oData)代码>-已将数据设置为本地JSON模型
<List growing="true" growingThreshold="100" headerText="{i18n>businessareas}" id="lstVendorGroups" items="{VendorGroups>/results}">
<items>
<!--<ObjectListItem title="{VendorGroups>GroupName}" type="Active" press=".onItemSelected" /> -->
<StandardListItem id="stListItem" />
</items>
</List>
您需要绑定sap.m.List的聚合“项”。 我将在您的代码中修改以下内容:
oListModelJson.loadData(oData)代码>不是必需的,因为前一行代码是:oListModelJson.setData(oData)代码>-已将数据设置为本地JSON模型
<List growing="true" growingThreshold="100" headerText="{i18n>businessareas}" id="lstVendorGroups" items="{VendorGroups>/results}">
<items>
<!--<ObjectListItem title="{VendorGroups>GroupName}" type="Active" press=".onItemSelected" /> -->
<StandardListItem id="stListItem" />
</items>
</List>
亲爱的Rahul感谢您的回复我按照您的建议更新了代码,但是仍然没有运气,但是当我使用console.log进行JSONMODEL时,我得到了准确的筛选结果,但是没有绑定到控件的数据这里是JSONMODEL日志结果的结果:数组[3]0:Object GroupName:“堕胎策略/Pro堕胎权限”VendorGroupID:1 VendorID:1元数据:对象_proto:Object 1:Object 2:Object您能告诉我您是如何在控制器代码中获取myList的吗?另外,您是否更新了XML代码?我已更新了控制器代码:请使用:
this.byId('lstVendorGroups').setModel(oListModelJson,“VendorGroups”)代码>其中myList.setModel(oListModelJson,“VendorGroups”)
被使用Dear Rahul感谢您的回复我按照您的建议更新了代码,但仍然不走运但是当我对JSONMODEL使用console.log时,我得到了准确的筛选结果,但没有绑定到控件的数据这里是JSONMODEL日志结果的结果:数组[3]0:Object GroupName:“堕胎策略/Pro堕胎权限”VendorGroupID:1 VendorID:1元数据:对象_proto:Object 1:Object 2:Object您能告诉我您是如何在控制器代码中获取myList的吗?另外,您是否更新了XML代码?我已更新了控制器代码:请使用:this.byId('lstVendorGroups').setModel(oListModelJson,“VendorGroups”)代码>其中myList.setModel(oListModelJson,“VendorGroups”)代码>已被使用