【问题标题】:filter functions problem过滤功能问题
【发布时间】:2010-03-13 20:10:16
【问题描述】:

我正在为我正在开发的应用程序开发一个搜索组件,我需要向它添加一些过滤器。我找到了一个示例,并且第一个过滤器工作正常。

现在我正在尝试添加第二个过滤器,但遇到了问题...在示例中,我发现他们使用了 filterFunctions,但我只有一个 filterFunction 选项,这是为什么呢?

这是示例代码

   productsCollection.filterFunctions =
[
 filterByPrice, filterByType,
 filterByCondition, filterByVendor
]

这就是我正在尝试的

acData.filterFunction = [filterByStatus, filterByDate]

但是使用此代码,我收到以下错误消息 - 1067:将 Array 类型的值隐式强制转换为不相关的类型 Function。

为什么我会收到此错误,我将如何向我的数组集合添加多个过滤器?

谢谢!

【问题讨论】:

  • 你能给我们一个你正在工作的例子的链接吗?

标签: apache-flex filter filterfunction


【解决方案1】:

filterFunction 必须设置为单个函数,而不是 Array 或任何其他数据类型。要组合多个函数,请创建一个组合它们的函数,如下所示:

acData.filterFunction = function(item:Object) 
    {
         return
             filterByPrice(item) &&
             filterByType(item) &&
             filterByCondition(item) &&
             filterByVendor(item);
    };

如果您看到使用接受数组的filterFunctions 复数的示例,请发布链接。这在标准 Flex 框架或新的 4.0 beta afaik 中是没有的。

【讨论】:

  • 感谢 Sam 的输入,但我似乎仍有问题
  • N/M 我不知道我在想什么。我知道了,谢谢你的帮助!
【解决方案2】:

看起来您必须扩展一个数组集合才能使其工作。此链接应为您说明:http://blog.rotundu.eu/flex/arraycollection-with-multiple-filter-functions/

【讨论】:

    猜你喜欢
    • 2019-04-20
    • 1970-01-01
    • 1970-01-01
    • 2022-08-05
    • 1970-01-01
    • 2012-03-26
    • 1970-01-01
    • 2023-03-26
    • 1970-01-01
    相关资源
    最近更新 更多