好的,所以我有一个 Controller ,其中有一个我想加载 View 的方法。
任何帮助深表感谢。
最佳答案
要加载 View ,您可以使用 Ext.widget()
.使用Ext.define()
在 View 文件中创建 View 。我建议使用 alias
属性来定义 View 的内联 xtype。
当需要加载 View 时,使用 Ext.widget()
创建 View 并指定 xtype(您的 View 的别名)。这是一个例子:
// define a window
Ext.define('MyApp.view.user.Add',
extend: 'Ext.window.Window',
alias : 'widget.adduser',
.
. // Add other properties, custom properties, methods, event handlers etc..
});
现在,当您想在用户 Controller 中创建实例时,您可以:
// create an instance
var view = Ext.widget('adduser'); // refer the below note!
注:请注意,没有“小部件”。!它会自动添加到您传递的小部件名称中。
现在,关于传递参数。像 Ext.create 方法一样,您应该能够将任何参数传递为:
// create an instance with params
var view = Ext.widget('adduser', {title: 'New User title'});
关于引用 : refs 可帮助您获取对页面上 View 的引用。它们无助于创建实例或加载 View 。如果你渲染了你的 View ,你可以使用 ref 系统来获取那个实例并操作 View 。您需要使用 ComponentQuery以获得您的观点的引用。
关于model-view-controller - Extjs 4 MVC 从 Controller 加载 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5890272/