extjs 6网格滚动条跳转

bqujaahr  于 2022-09-26  发布在  其他
关注(0)|答案(1)|浏览(204)

我有一个extjs 6.0.1.250网格,带有一个远程json存储,它每2秒钟加载一次,以刷新其数据。它显示了一个带有设备状态的设备列表,大约200行。(名称、正常运行时间等…)
当用户用鼠标滚动滚动条时,网格不会保持其位置,而是跳到原来的位置。有没有一个解决方案可以正常使用滚动?
使用taskManager:

this.config.pmConfig.deviceRefreshTask =
            {

            run: function()
            {
                var store=this.getDevicesGetDevicesStore();

                store.proxy.setExtraParam('eventDisableLoader', true);
                store.load();

            },
            interval: 2000, // 2 second, this will update the progressbar
            scope: this
        };

        Ext.TaskManager.start(this.config.pmConfig.deviceRefreshTask); // start the first timer

这是网格:

xtype: 'gridpanel',
viewConfig: {
    loadMask: false
},
itemId: 'devicesGrid',
width: 40,
title: '``Devices``',
emptyText: '``There is no device in this group.``',
store: 'Devices.GetDevices',
columns: [
    {
        xtype: 'gridcolumn',
        hidden: true,
        width: 80,
        align: 'right',
        dataIndex: 'id',
        text: 'Id'
    },
//....... more normal and some action columns.....
],
viewConfig: {
    itemId: 'devicesGridTableView',
    loadMask: false,
    preserveScrollOnRefresh: true,
    preserveScrollOnReload: true,
    plugins: [
        {
            ptype: 'gridviewdragdrop',
            ddGroup: 'deviceGroups',
            enableDrop: false
        }
    ]
},
tabConfig: {
    xtype: 'tab',
    dock: 'left'
},
features: [
    {
        ftype: 'grouping',
        groupHeaderTpl: [
            '<b>{name}</b>'
        ]
    }
],
selModel: {
    selType: 'checkboxmodel'
}
hmae6n7t

hmae6n7t1#

Arthurs的建议很有用:“在网格定义中,您可以尝试使用bufferedRenderer:false”
谢谢

相关问题