使用附加参数进行Extjs分页

时间:2014-08-08 12:31:15

标签: javascript extjs pagination

我正在开发一个ExtJS 4.2项目,我希望使用分页工具栏来浏览图像。 当我打开窗口时,所有图像都是正确的,但是当我单击下一个按钮以查看下一个图像时,结果为空。这是因为参数ID没有传递给后端系统。 我在其他主题中看到了像baseParams这样的选项,但它们不在文档中并且无法正常工作。

//My Store Class
Ext.define('App.store.Images', {
  extend: 'Ext.data.Store',
  model: 'App.model.Images',
  autoLoad: false,
  autoSync: false,
  storeId: 'Images',
  pageSize: 8,
  proxy: {
    type: 'ajax',
    url: '/getImages',
    reader: {
        type: 'json',
        root: 'images',
        totalProperty: 'total'
    }
  }
});
// This code is execute when i open the Window
var imagesStore = Ext.StoreManager.get('Images');
imagesStore.on('load', buildContent);
imagesStore.load({
    params: {
        id: record.get('id'),
        start: 0,
        limit: 8
    }
});

可以在哪里定义附加参数?

1 个答案:

答案 0 :(得分:3)

实际上,您可以在商店代理上定义extraParams。您可以在加载方法调用之前执行此操作:

Ext.apply(store.getProxy().extraParams, {
    'yourId': yourId
});

或在您的代理配置中:

proxy: {
    type: 'ajax',
    url: '/getImages',
    reader: {
        type: 'json',
        root: 'images',
        totalProperty: 'total'
    }
    extraParams: {
        'yourId': yourId
    }
}