SAPUI5:没有在XML视图中创建动态过滤器的选项?
发布时间:2020-12-15 23:53:08 所属栏目:百科 来源:网络整理
导读:我将OData模型绑定到列表的项目,并尝试在 XML视图中使用以下语法动态应用过滤器: List id="supplierList" items="{ path : '/SupplierCollection',filters : { path : 'CompCode',operator : 'EQ',value1: { path : 'general/companyCode' } } }" 此处使用
我将OData模型绑定到列表的项目,并尝试在
XML视图中使用以下语法动态应用过滤器:
<List id="supplierList" items="{ path : '/SupplierCollection',filters : { path : 'CompCode',operator : 'EQ',value1: { path : 'general>/companyCode' } } }" 此处使用的“常规”模型已在Component.js中定义,并且还在视图的控制器中引用: onInit : function() { ... var generalModel = sap.ui.getCore().getModel("general"); this.getView().setModel(generalModel,"general"); ... } 不幸的是,模型似乎没有被解析,并且在运行时没有正确解释路径.但是,如果我对value1进行硬编码,那么过滤器就能正常工作. 关于这个问题的任何想法? 我是否使用错误的路径来设置过滤器的value1?或者这是一个错误?
显然艾伦的答案是长期的正确方法,但同时我在我的控制器中使用了以下工作:
onInit: function() { this._oView = this.getView(); // ... any other init stuff ... this._oView.attachAfterRendering(function() { var sValue1 = "filter val"; var sPath = "fieldName"; var sOperator = "EQ"; var oBinding = this.byId("catalogTable").getBinding("items"); oBinding.filter([new sap.ui.model.Filter(sPath,sOperator,sValue1)]); }); } 只对服务进行一次调用(它不加载数据然后重新加载,我担心它可能). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容