我对 Ext 中的 MVC 模式真的很陌生。我有一个标签面板,其中包含同一组件的多个实例(我们称之为产品),每个实例都应该在打开时调用服务器,并带有一个 id 参数。
现在,为了创建这些选项卡 - 我在 Product 控制器中使用它创建了一个新的视图实例,但我觉得它真的不正确。
createMainView: function (opts) {
return Ext.widget("productDisplay", opts);
}
我从我的“主”控制器中调用它,如下所示:
var tab = this.application.getController("Products")
.createMainView({ productId : id, closable: true })
tabs.add(tab);
tabs.setActiveTab(tab);
正确使用视图的多个实例的正确方法是什么,每个实例都有一个存储和行为的实例(通过控制器)。
我可以为他们使用一个命名商店(在 app/store/product.js 下有一个 js 文件)吗?
我应该load
从控制器手动调用商店(以传递productId
),还是有更好的方法?