我在視圖模型商店,如:ExtJS 5.x如何在存儲加載後更改網格視圖(viewConfig)?
Ext.define('MyApp.page.PageModel', {
extend: 'Ext.app.ViewModel',
//...
stores: {
Posts: {
model: //...
}
}
});
像一個網格:
Ext.define('MyApp.page.MainView', {
extend: 'Ext.panel.Panel',
//...
initComponent: function() {
var me = this;
//...
me.items = [
{
xtype: 'grid',
bind: {
store: '{Posts}'
},
columns: [ /* ... */ ],
viewConfig: {
getRowClass: function (record) {
//...
}
}
}
];
me.callParent(arguments);
}
});
如何變更網格視圖後店負荷(在我的情況)?
我試圖用電網事件(beforerender
和viewready
)mon
和addManagedListener
方法,我試圖用on
和addListener
方法來存儲這些網格內的事件,但這種方法是行不通的。
有人有什麼想法嗎?
你想改變什麼?您必須找到實際設置的位置/方式,例如您可以在運行時通過覆蓋網格視圖上的getRowClass函數來更改getRowClass函數:'grid.getView()。getRowClass = function(){...}'。之後您可能必須重新渲染網格('grid.getView()。refresh()'),以便應用新函數。 – Alexander
我想更改'grid'的'viewConfig'中的'emptyText'參數。但是我只有在加載商店後才需要這樣做。而你的解決方案並不是解決問題,因爲從任何商店事件我都無法訪問他的上層組件(在我的情況下是'grid')。 – vitaliklibra