87,922
社区成员
发帖
与我相关
我的任务
分享
init: function () {
var me = this;
me.control({
"#sys_mmgl": {
click: this.onSysMMGLClick
},
"#sys_zhgl": {
click: this.onSysZHGLClick
}
});
},
onSysMMGLClick: function (button, e, eOpts) {
this.ShowMyPage(button.id, '密码管理', '','');
},
onSysZHGLClick: function (button, e, eOpts) {
this.ShowMyPage(button.id, '账号管理','' ,'userMain');
},
ShowMyPage: function (btnId, pageTitle, pageHTML, pageType) {
var mainPage = Ext.getCmp('app-mainZ');
var newTab = mainPage.getComponent(mainPage.id + btnId);
if (!newTab) {
newTab = mainPage.add({
id: mainPage.id + btnId,
title: pageTitle,
html: pageHTML,
closable: true,
xtype: pageType,
});
newTab.getStore().load();
newTab.show();
}
mainPage.setActiveTab(newTab);
},
});
Ext.define('DemoCMS.controller.user.Main', {
extend: 'Ext.app.Controller',
refs: [
{
ref: 'userView',//引用名称,主要作用是生成访问方法,以便引用对象;注意,首字母不能大写
selector: '#userMain',//查询组件使用的选择符
}
],
init: function () {
var me = this;
me.control({
//为视图绑定show事件,single控制数据只在第一次显示时处罚,否则页面会在标签切换时多次触发
'#userMain': {
show: {
single: true,
fn: me.onViewShow,
},
selectionchange: me.onSelectUser,
},
'#userMain #Add': {
click: me.onAddUser,
},
'#userMain #Delete': {
click:me.onDeleteUser,
},
'#userMain #ResetPassword': {
click: me.onResetPassword,
},
});
},
onViewShow: function () {
//由于编辑插件不是用户视图的子组件,所以不能在control方法内定义;所以先获取用户视图,然后通过用户视图的rowEditing属性获取行编辑插件
//再通过on方法来绑定事件;由于要获取用户视图,在init和onLaunch方法内并不能保证视图创建,必须保证在视图渲染或显示后调用;所以在onViewShow方法内调用
var me = this;
me.getUserView().rowEditing.on({
scope: me,
canceledit: me.onCancelEdit,//取消按钮
edit: me.onCompleteEdit//保存按钮
});
//加载存储
Ext.getStore('Users').load();
},
});
nacMainFrameControl.application.getController(controllerName).init();
关键代码就在这里了