2

我在我的 WSAPI 查询中传递了一个函数作为过滤器,但是它似乎对返回的结果没有影响。是否有使用此方法无法过滤的字段?

Ext.define('CustomApp', {
    extend: 'Rally.app.App',
    componentCls: 'app',

    launch: function() {
        Ext.create('Rally.data.WsapiDataStore', {
            model        : 'TestCase',
            fetch        : ['TestCases'],
            filters      : [
                function(item) {
                    return item.FormattedID.indexOf('10') !== -1;
                }
            ]
        }).load({
            callback: function(records) {
                //All records returned, no filter applied
            }
        });
    }
});
4

1 回答 1

0

我还希望您的代码能够正常工作,但可能会在应用客户端过滤器之前发生回调。这是应用过滤器的代码的修改版本,并且仅按预期返回一条记录:

Ext.define('CustomApp', {
    extend: 'Rally.app.App',
    componentCls: 'app',
    launch: function() {

       var myStore = Ext.create('Rally.data.WsapiDataStore', {
            model        : 'TestCase',
            fetch        : ['FormattedID']
        });
       myStore.load({
            callback: function(records) {
                myStore.filterBy(function(item) {
                   return item.get('FormattedID').indexOf('10') !== -1;
            });
            console.log(myStore.getRange()); //one record
            }
        });
    }
});
于 2013-08-22T23:31:12.590 回答