我正在尝试将 Ext 的(4.1.1)缓冲存储/网格组合与数据一起使用,我无法通过 rest Api 直接访问这些数据.. 左右,但传入的数据由我的控制器处理,只想将此数据添加到缓冲网格。
问题来了,当我将 500 个项目直接加载到商店时,缓冲正在工作.. 只有我能看到的项目才会被渲染,但是当我开始时,store.add(items)
它们都会自动渲染..
所以这是我的商店和网格:
店铺
this.store = Ext.create('Ext.data.ArrayStore', {
storeId: 'reportDataStore',
fields: [
{ name: 'html'}
],
buffered: true,
pageSize: 100,
autoLoad: true
});
网格
{
xtype: 'gridpanel',
flex: 1,
hideHeaders: true,
store: this.store,
verticalScroller: {
rowHeight: 43
},
disableSelection: true,
columns: [
{ header: '', dataIndex: 'html', flex: 1 }
]
}
数据控制器
...
// somewhere in initialization process of the controller,
// I take the reportDataStore, for later reusing
this.reportDataStore = Ext.getStore('reportDataStore');
...
onNewData: function(data) {
this.reportDataStore.add(data)
}
所以我的期望是,数据将进入商店,但只有可见数据会被渲染。现在是这样,所有新数据都会被渲染。