Javascript extjs grid real full afterrender事件?
我正在使用extjs GridPanel 加载存储时:Javascript extjs grid real full afterrender事件?,javascript,events,extjs,grid,Javascript,Events,Extjs,Grid,我正在使用extjs GridPanel 加载存储时: I do Ext.getBody().mask(); Grid 'afterrender' event fires first Store 'load' event fires second I attached unmask function to store load 'event' 但在那件事之后的几分钟, 当我看到白色网格时(在取消掩码和填充行之间) 在真正的完整afterrender事件中,什么是解除遮罩的正确方法? 我
I do Ext.getBody().mask();
Grid 'afterrender' event fires first
Store 'load' event fires second
I attached unmask function to store load 'event'
但在那件事之后的几分钟,
当我看到白色网格时(在取消掩码和填充行之间)
在真正的完整afterrender事件中,什么是解除遮罩的正确方法?
我的意思是-当所有行都被渲染时
谢谢我打算建议gridview的
加载掩码
配置,如文档中所述。但我注意到,出于某种原因,它对我不起作用
如果它对您也不起作用,只需使用gridview的refresh
事件即可。它只有在数据完全加载到网格中后才会触发。您可以通过gridpanel的viewConfig
config将其连接,如下所示:
Ext.create('Ext.grid.Panel', {
title: 'My Grid Panel',
// ... other grid panel configs
viewConfig: {
listeners: {
refresh: function(gridview) {
console.log(gridview);
console.log('is fully loaded');
}
}
},
});
或者,如果您使用的是MVC应用程序体系结构:
Ext.define('MyApp.controller.MyController', {
extend: 'Ext.app.Controller',
models: ['MyModel'],
stores: ['MyStore'],
views: ['MyGridPanel'],
init: function() {
var me = this;
me.control({
// ... other event handlers
'mygridpanel > gridview': {
refresh: function(gridview) {
console.log(gridview);
console.log('is fully loaded');
}
},
});
}
});
我打算建议gridview的
loadMask
config,如文档中所述。但我注意到,出于某种原因,它对我不起作用
如果它对您也不起作用,只需使用gridview的refresh
事件即可。它只有在数据完全加载到网格中后才会触发。您可以通过gridpanel的viewConfig
config将其连接,如下所示:
Ext.create('Ext.grid.Panel', {
title: 'My Grid Panel',
// ... other grid panel configs
viewConfig: {
listeners: {
refresh: function(gridview) {
console.log(gridview);
console.log('is fully loaded');
}
}
},
});
或者,如果您使用的是MVC应用程序体系结构:
Ext.define('MyApp.controller.MyController', {
extend: 'Ext.app.Controller',
models: ['MyModel'],
stores: ['MyStore'],
views: ['MyGridPanel'],
init: function() {
var me = this;
me.control({
// ... other event handlers
'mygridpanel > gridview': {
refresh: function(gridview) {
console.log(gridview);
console.log('is fully loaded');
}
},
});
}
});
有点晚了,但我刚刚不得不与一个类似的问题作斗争。在ExtJS3.4中,我可以处理网格事件
viewready
。虽然有点晚了,但我不得不解决一个类似的问题。在extjs3.4中,我可以使用网格事件viewready
。