我试图在我的应用程序中引用一个商店,以便在我的网格底部添加一个分页工具栏。在我研究过的大多数示例中,商店是由变量引用的,例如:store: someStore。但是,通过我构建我的应用程序的方式有所不同,并且确实为商店创建了一个引用变量。我试过分配一个ID,但这不起作用。
这是我所拥有的:
在我看来 Grid.js:
Ext.define('myApp.view.user.Grid', {
extend: 'Ext.grid.Panel',
viewModel: {
type: 'user-grid'
},
bind: {
store: '{users}',
},
columns: {...},
//my paging tool bar
dockedItems: [{
xtype: 'pagingtoolbar',
dock: 'bottom',
store: 'girdStore'
//store: {users} -> did not work
}],
...
});
在我的视图模型 GridModel.js 中:
Ext.define('myApp.view.user.GridModel', {
extend: 'Ext.app.ViewModel',
requires: [
'myApp.model.User'
],
stores: {
users: {
model: 'myApp.model.User',
storeId: 'gridStore',
autoLoad: true
}
},
formulas: {...}
});
当我尝试通过 id 'gridStore' 引用 {users} 存储时,我收到此错误:
Uncaught TypeError: Cannot read property 'on' of undefined
在不完全重构我的模型的情况下,最好的方法是什么?