0

我正在尝试一次应用多个过滤器。因为过滤器上有一个侦听器,当过滤器被清除时,它将从在线商店检索信息。所以我需要立即更换它们。

正在调用过滤器函数,记录消息,但不知何故,结果被忽略了。因此,无论 includeStatus 是 true 还是 false,都会显示所有项目。

flipElements: function (includeStatus)
{
    this.setFilters(
    [
        new Ext.util.Filter(
        {
            property: 'userName',
            value: 'me'
        }),
        new Ext.util.Filter(
        {
            filterFn: function (record)
            {
                var result = includeStatus === (record.get('statusId') === 3);
                console.log(result);
                return result;
            }
        })
    ]);
}

问题不在于模型没有该属性,因为当我简单地使用 filterBy 设置过滤器时,它确实正确显示/隐藏了项目。

编辑:即使日志显示为 false,它仍会显示项目。

4

1 回答 1

1

setFilters仅更改商店的过滤器属性。为了触发过滤器动作调用函数filter。这通常用于向过滤器集添加样式为 'property,value' 的过滤器,但是当没有给定参数时,它会过滤存储。

于 2014-11-24T12:16:13.997 回答