我的问题是,当我点击按钮时,会显示以下错误:
TypeError:EntryForm.show不是函数
Main.js
Ext.define('MyApp.view.main.Main', {
extend: 'Ext.container.Container',
.....
do Stuff
.....
tbar: [{
text: 'Button',
handler: function(){
var mask = Ext.create('MyApp.view.main.EntryForm');
mask.show(this);
EntryForm.js
Ext.define('MyApp.view.main.EntryForm',{
extend: 'Ext.Widget',
....
generate my items for the form
....
当我在main.js类中使用EntryForm小部件并使用create而不是define并将其保存在变量中时,它可以正常工作。
答案 0 :(得分:0)
我不完全理解您的问题,但我认为您需要在尝试显示之前将EntryForm视图添加到Viewport,例如。
var mask = Ext.create('MyApp.view.main.EntryForm');
Ext.Viewport.add(mask);
如果默认情况下EntryForm设置为隐藏,那么您仍然需要
mask.show();
此链接也可以帮助http://training.figleaf.com/tutorials/senchacomplete/chapter2/lesson3/5.cfm