EXTJS 5 我可以在视图模型的商店 属性 中有一个树商店吗?
EXTJS 5 Can I have a tree store in stores property of view model?
我有这个简单的 mvvm 示例:https://fiddle.sencha.com/#fiddle/j8m
当我 console.log 来自控制器的 viewModel 时,存储出现在数据属性中,调用 viewModel.getStores() returns me null。我不明白:/...
这里的代码与 fiddle:
中的相同
Ext.define('MainViewModel', {
extend: 'Ext.app.ViewModel',
alias: 'viewmodel.mainviewmodel',
stores: {
todoAccountsStore: {
type: 'tree'
},
skipAccountsStore: {
type: 'tree'
}
}
});
Ext.define('MainViewController', {
extend: 'Ext.app.ViewController',
alias: 'controller.mainviewcontroller',
init: function() {
console.log(this.getViewModel());
}
});
Ext.define('MainView', {
extend: 'Ext.panel.Panel',
xtype: 'view-main',
controller: 'mainviewcontroller',
viewModel: {
type: 'mainviewmodel'
}
});
var test = Ext.create('MainView', {
renderTo: Ext.getBody()
});
要检索您的商店,您可以在控制器中使用以下代码:
var viewModel = this.getViewModel();
var todo = viewModel.getStore('todoAccountsStore');
var skip = viewModel.getStore('skipAccountsStore');
基于此 thread 他们声明 getStores
方法是私有的。我认为文档仍未更新以表示这一点。
我有这个简单的 mvvm 示例:https://fiddle.sencha.com/#fiddle/j8m
当我 console.log 来自控制器的 viewModel 时,存储出现在数据属性中,调用 viewModel.getStores() returns me null。我不明白:/...
这里的代码与 fiddle:
中的相同Ext.define('MainViewModel', {
extend: 'Ext.app.ViewModel',
alias: 'viewmodel.mainviewmodel',
stores: {
todoAccountsStore: {
type: 'tree'
},
skipAccountsStore: {
type: 'tree'
}
}
});
Ext.define('MainViewController', {
extend: 'Ext.app.ViewController',
alias: 'controller.mainviewcontroller',
init: function() {
console.log(this.getViewModel());
}
});
Ext.define('MainView', {
extend: 'Ext.panel.Panel',
xtype: 'view-main',
controller: 'mainviewcontroller',
viewModel: {
type: 'mainviewmodel'
}
});
var test = Ext.create('MainView', {
renderTo: Ext.getBody()
});
要检索您的商店,您可以在控制器中使用以下代码:
var viewModel = this.getViewModel();
var todo = viewModel.getStore('todoAccountsStore');
var skip = viewModel.getStore('skipAccountsStore');
基于此 thread 他们声明 getStores
方法是私有的。我认为文档仍未更新以表示这一点。