自定义缓冲的网格分页参数

时间:2019-04-29 11:59:40

标签: extjs extjs6

我想在POST正文而不是urlParam中发送分页参数。我怎样才能做到这一点?我试图在sencha论坛和许多其他地方搜索,但是找不到任何示例。我应该像这篇文章一样修改prefetchPage函数吗? ExtJS Infinite Scroll Grid with remote Filters and Sort

我想要而不是

  

/ serviceCall?start = 0&limit = 100&pageIndex = 1

我想要

  

/ serviceCall?

Body : 
{   
 "start" : 0,
 "limit" : 100,
 "pageIndex" : 1,
 "pagingId": uuid (some extra parameter)
}

1 个答案:

答案 0 :(得分:1)

您需要设置:

  • actionMethods-设置读取请求应使用POST方法。

  • paramsAsJson-通过表单而不是url参数发送参数

  • extraParams-设置其他参数(pagingId

  • pageParam-将页面参数从默认page更改为自定义pageIndex

示例:

var myStore = Ext.create('Ext.data.Store', {
    autoLoad: true,
    fields: ['a'],
    noCache: true,
    remoteSort: false,
    remoteFilter: false,
    pageSize: 10,
    proxy: {
        paramsAsJson: true,
        url: "https://example.xyz/f",
        noCache: false,
        type: 'ajax',
        pageParam: 'pageIndex',

        actionMethods: {
            create: 'POST',
            read: 'POST',
            update: 'POST',
            destroy: 'POST'
        },
        headers: {
            'Content-Type': 'application/json'
        },
        extraParams: {
            "pagingId": uuid //extra parameter
        }
    }
});