我拉我的頭髮就這一個...ExtJS的5格店/視圖模型綁定:不能修改轉空店
我有一些網格,商店和視圖模型視圖。我需要不同網格中商店的不同過濾版本,所以我試圖將每個過濾的商店綁定到網格。現在,我甚至不能得到一個店擺在首位的網格加載...
這裏是我的代碼如下所示:
商店:
Ext.define('My.store.Admin.Kinder', {
extend: 'Ext.data.Store',
model: 'My.model.Kind',
storeId: 'adminKinderStore',
alias: 'store.adminKinder',
proxy: {
type: 'ajax',
method: 'post',
url: '/getKinder',
reader: {
type: 'json',
rootProperty: 'kinder'
}
}
});
視圖模型:
Ext.define('My.model.kindViewModel', {
extend: 'Ext.app.ViewModel',
alias: 'viewmodel.kindViewModel',
requires: [
'My.model.Kind',
'My.store.Admin.Kinder'
],
view: 'kindView',
stores: {
warteliste: {
type: 'adminKinder'
}
}
});
查看:
Ext.define('My.view.Admin.kinder', {
extend: 'Ext.panel.Panel',
alias: 'widget.kindView',
id: 'kinder-panel',
requires: [
'My.view.Admin.kindController',
'My.model.kindViewModel'
],
controller: 'kind',
border: false,
maxWidth: 960,
session: My.session,
viewModel: {
type: 'kindViewModel'
},
initComponent: function() {
this.activeTab = 'warteliste-tab';
this.callParent();
},
items: [
{
xtype: 'grid',
id: 'warteliste-grid',
bind: {
store: '{warteliste}'
},
border: false,
margin: '0 0 20px 0',
selModel: {
allowDeselect: true
},
columns: [
// some grid columns
],
listeners: {
afterRender: function(grid) {
grid.store.load();
}
}
}]
});
我得到一個錯誤信息「無法修改轉空店」,這必然意味着這家店是不是當store.load()被調用的一個AfterRender監聽器(還)的約束。 奇怪的是,當我console.log網格,商店在那裏。當我console.log grid.store時,返回一個空的商店。
這就是它!謝謝。 – choppingblock 2014-11-27 14:07:56
它的作品在getStore中沒有'{}'。 ()。getStore('warteliste')。load(); – lamasgergo 2015-05-27 21:19:19