我正在尝试通过 ref 获取视图。在控制器中定义的方法内。我收到错误消息
对象 [对象对象] 没有方法“getUserForm”。
这是我的视图和控制器,如果有人可以帮助我,我会很高兴..
提前致谢。
用户表格
Ext.define(appName + '.view.user.UserForm', {
extend : 'Ext.form.FieldSet',
alias : 'widget.userform',
title : 'User Form',
instructions: 'Fill your personel information',
iconCls : 'icon-form',
fullscreen: true,
config : {
items : [{
xtype : 'toolbar',
docked : 'top',
title : 'Registeration Form',
iconCls : 'icon-form'
}, {
xtype : 'textfield',
label : 'Name ',
name : 'name'
}, {
xtype : 'textfield',
label : 'Surname ',
name : 'surname'
}, {
xtype : 'passwordfield',
label : 'Password ',
name : 'password'
}, {
xtype : 'toolbar',
dock : 'bottom',
defaults : {
xtype : 'button',
flex : 1
},
layout : { pack : 'center' },
items : [{
text : 'Reset',
iconCls : 'icon-refresh-32',
ui : 'action',
action : 'reset'
}, {
text : 'Save',
ui : 'action',
iconCls : 'icon-save-32',
action : 'save'
}]
}]
}
});
用户控制器
Ext.define(appName + '.controller.UserController', {
extend : 'Ext.app.Controller',
stores : [ 'Users' ],
models : [ 'User' ],
views : [ 'user.UserList', 'user.UserForm' ],
refs : [{
ref : 'userList',
selector: 'userlist'
}, {
ref : 'userForm',
selector: 'userform'
}],
init : function() {
this.control({
'userform button[action=save]' : {
release : this.saveUserForm
},
'userform button[action=reset]' : {
release : this.resetUserForm
}
});
},
saveUserForm : function(btn) {
// Ext.Msg.alert('SUCCESS', 'Form is successfully saved.');
**var form = this.getUserForm();** // ERROR!
alert(form);
// Ext.Msg.alert('Form Values', JSON.stringify(form.getValues(), null, 2));
},
resetUserForm : function(btn) {
**var form = this.getUserForm();** // ERROR!
// var form = btn.up('form');
form.reset();
}
});