Sapui5 openui5-编写一个FilterOperator';不包含';

Sapui5 openui5-编写一个FilterOperator';不包含';,sapui5,Sapui5,以下是所有FilterOperator的列表: 我的代码: var searchValue = "searching"; var myFilter = new sap.ui.model.Filter("var", sap.ui.model.FilterOperator.Contains, searchValue, false); 但这样,所有项目都将被选中,如果它们在键“var”中包含字符串“search”。我如何编写一个过滤器,即选择项目,仅当它们在键“var”中没有字符串searchVa

以下是所有FilterOperator的列表:

我的代码:

var searchValue = "searching";

var myFilter = new sap.ui.model.Filter("var", sap.ui.model.FilterOperator.Contains, searchValue, false);
但这样,所有项目都将被选中,如果它们在键“var”中包含字符串“search”。我如何编写一个过滤器,即选择项目,仅当它们在键“var”中没有字符串searchValue时

例如:

  var = {(A,B,C), (B,C,D), (C,D,E)};
  searchValue = "A";

  //after filtering
  result = {(B,C,D), (C,D,E)};

知道你使用的是哪种型号会很好。无论如何

目前对此没有“开箱即用”的支持。您可以做的是使用的“test”属性,这将是一个用于自定义比较的函数(因此您可以实现所需的功能)。这对于JSONModel很好。然而,由于OData实际上是一个服务器端模型,我假设ODataModel的实现将忽略“测试”功能

如果您使用的是OData,那么一般来说您有一些好处。允许“逻辑否定”。例如,要获取客户名称不包含“Al”的所有客户的列表,您可以调用:

然而,UI5的ODataModel目前似乎没有官方支持。我检查了的代码,没有处理“逻辑否定”。在这里,您可以手动创建URL字符串,包括带有逻辑否定的$filter,然后自己执行GET请求以获取数据。另一个选择是扩展UI5本身,但我认为这可能会有点棘手

我想这值得一个功能请求:-)