用params加载商店

我想要做的就是用下面的参数加载商店,所以我只得到我商店的前十项。

app.stores.actualites.load({
    params : {
         start:0,
         limit:10,
    },
    callback : function(records, operation, success) {
         app.loadmask.hide();
    }
});     

但这不起作用,它将返回所有18个商店项目。

如果我将开始参数设置为1,它将返回17个项目,所以此参数正在工作,但不是其他参数。

更新:存储代码

app.stores.actualites = new Ext.data.Store({
    model: 'app.models.Actualites',
    proxy: {
        type: 'ajax',
        url: app.stores.baseAjaxURL + '&jspPage=%2Fajax%2FlistActualites.jsp',
        reader: {
            type: 'json',
            root: 'actualite',
            successProperty: 'success',
            totalProperty: 'total',
            idProperty: 'blogEntryInfosId'
        }
    }
});

奇怪的是,当我在浏览器中尝试URL并添加&start = 0&limit = 1时,它工作得很好......

更新:尝试extraParams

我也试着用extraParams来做,但这仍然不起作用

app.stores.actualites.getProxy().extraParams.start = 1;
app.stores.actualites.getProxy().extraParams.limit = 2;
app.stores.actualites.load({
    callback : function(records, operation, success) {
        app.loadmask.hide();
    }
});

分页功能必须在您的服务器端实际实施。 Sencha只会保留页面,并会向您发送适当的startlimit值。 您需要在服务器端脚本访问这些值,并根据这些值返回适当的结果。

如果您使用的是列表,那么您可以使用Sencha的内置ListPaging插件,它可以自己处理启动/限制参数。


这听起来很奇怪,但我更改了参数'limit'的名称以在客户端和服务器上“停止”,并且它工作正常。


它应该是这样的:

app.stores.actualites.getProxy().setExtraParams({
                        start:1,
                        limit:2
                    })
链接地址: http://www.djcxy.com/p/80019.html

上一篇: Loading store with params

下一篇: Cancel store.remove after server call in ExtJS 4