0

使用 SDK 2.0。

我需要帮助找出在 WsapiDataStore 的“过滤器:”配置选项中使用函数的方法。当我运行下面的代码时,我得到了错误。如果我删除“过滤器:”选项,则没有错误。

我需要使用一个函数,因为我必须检查一个条件或另一个条件。

任何人都知道如何让这个工作?

谢谢!

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

        var features = Ext.create('Rally.data.WsapiDataStore', {
            model: 'portfolioitem/feature',
            autoLoad: true,
            remoteSort: false,
            filters: [
                function (item) {
                return true;
                }
            ],
            listeners: {
                load: function(store, data, success) {
                    console.log('Store loaded in launch:', store);
                },
                scope: this
            }
        });             
    }
});

这是错误。

Uncaught TypeError: Cannot call method 'toString' of undefined sdk.js:4
a.define._createQueryString sdk.js:4
a.define.toString sdk.js:4
a.define.encodeFilters sdk.js:4
a.define.encodeFilters sdk.js:4
Ext.define.getParams sdk.js:4
Ext.define.buildRequest sdk.js:4
b.implement.callParent sdk.js:4
a.define.buildRequest sdk.js:4
Ext.define.doRequest sdk.js:4
Ext.define.read sdk.js:4
Ext.define.load sdk.js:4
b.implement.callParent sdk.js:4
Ext.define.load sdk.js:4
b.implement.callParent sdk.js:4
a.define.load sdk.js:4
b.implement.callParent sdk.js:4
a.define.load sdk.js:4
a.define.load.Rally.data.ModelFactory.getModel.success sdk.js:4
b sdk.js:4
(anonymous function) sdk.js:4
d sdk.js:4
a.define._onTypeDefinitionsRetrieved sdk.js:4
a.define._fetchTypeDefinitions.Rally.environment.getIoProvider.httpGet.success sdk.js:4
Ext.apply.callback sdk.js:4
e sdk.js:4
Ext.apply.callback sdk.js:4
Ext.define.onComplete sdk.js:4
Ext.define.onStateChange sdk.js:4
(anonymous function) sdk.js:4
4

1 回答 1

0

查看:

Rally.data.QueryFilter

连同这个 Stackoverflow 答案:

Rally App SDK 2.0:初始创建后无法修改 QueryFilter 对象

这显示了一个使用 Rally.data.QueryFilter 准备表示多个条件的过滤器数组的好例子。您可以将该逻辑包装在一个函数中,并可能实现您想要的最终结果。

于 2013-02-18T02:08:14.827 回答