使用ExtJs 4.1.1
我需要为特定视图的每个实例创建一些商店。所以,我在视图的initcomponent方法中创建这些存储。这是我正在做的一些代码的重构的一部分。我试图使这个视图组件能够用多个实例进行实例化,同时让一个控制器负责所有实例。除了我的目标,这就是我在做的事情:
特定的树库中填充了数据(无论如何,数据最终会在使用firebug验证的商店中结束)。树视图在视图中定义,它将填充的树库作为其存储。但是,当视图出现时。数据不在树视图中。我相信这可能与initComponent运行之前的所有静态配置加载有关,虽然我不确定。如果我能对这个过程有所了解,那将非常有帮助。我想我说this.store1属于视图配置中的视图,但是在视图initComponent中定义this.store1。这是错误的做法吗?
任何建议都表示赞赏。
使用ExtJs 4.1.1
答案 0 :(得分:2)
只需从控制器的商店列表中删除商店名称,因为这种机制会干扰以某种方式为商店分配ID。以下是我的经验示例:
Ext.define('Adminpanel.controller.MenuManager', {
extend: 'Ext.app.Controller',
stores: ['Menu'] // <-- reason
});
Ext.define('Adminpanel.view.menuManager.Tree', {
extend: 'Ext.tree.Panel',
initComponent: function() {
this.store = Ext.create('Adminpanel.store.Menu'); // <-- problem
this.callParent(arguments);
}
});