照着网上的例子写了一个controller
Ext.define('SMS.controller.MenuControll',{
extend: 'Ext.app.Controller',
refs:[
{ref: 'smsmenu',selector: 'smsmenu'}
],
init:function(){
this.control({
'smsmenu': {
itemmousedown: this.loadMenu
}
})
},
........................................
其中smsmenu对应的是一个视图,核心代码如下
Ext.define('SMS.view.MenuView',{
extend: 'Ext.tree.Panel',
alias: 'widget.smsmenu',
requires:['SMS.store.MenusData'],
initComponent : function(){
.............我的问题是在 {ref: 'smsmenu',selector: 'smsmenu'}中,我查了网上的一些说法,ref是selector的引用名字可以随便起,selector是Ext.ComponentQuery可以直接查到的组件,我现在把ref的名称改一下改为myMenu,结果运行的时候就一点反应都没有了,必须叫smsmenu,才能做出正确反应,而且,我还发现,selector的值可以随便起,比如起名smsmenuxxxx,只要ref的名字是smsmenu,运行就没问题...,这是为什么呀,我觉得按理说,selector的值应该不能随便变化吧,他应该对应试图中的alias: 'widget.smsmenu', 吧,ref的值应该是可以变得吧,哪位大虾能指点一下迷津不胜感激!!!!下面是改变后不能运行的代码Ext.define('SMS.controller.MenuControll',{
extend: 'Ext.app.Controller',
refs:[
{ref: 'myMenu',selector: 'smsmenu'}
],
init:function(){
this.control({
'myMenu': {
itemmousedown: this.loadMenu
}
})
},
Ext.define('SMS.controller.MenuControll',{
extend: 'Ext.app.Controller',
refs:[
{ref: 'smsmenu',selector: 'smsmenu'}
],
init:function(){
this.control({
'smsmenu': {
itemmousedown: this.loadMenu
}
})
},
........................................
其中smsmenu对应的是一个视图,核心代码如下
Ext.define('SMS.view.MenuView',{
extend: 'Ext.tree.Panel',
alias: 'widget.smsmenu',
requires:['SMS.store.MenusData'],
initComponent : function(){
.............我的问题是在 {ref: 'smsmenu',selector: 'smsmenu'}中,我查了网上的一些说法,ref是selector的引用名字可以随便起,selector是Ext.ComponentQuery可以直接查到的组件,我现在把ref的名称改一下改为myMenu,结果运行的时候就一点反应都没有了,必须叫smsmenu,才能做出正确反应,而且,我还发现,selector的值可以随便起,比如起名smsmenuxxxx,只要ref的名字是smsmenu,运行就没问题...,这是为什么呀,我觉得按理说,selector的值应该不能随便变化吧,他应该对应试图中的alias: 'widget.smsmenu', 吧,ref的值应该是可以变得吧,哪位大虾能指点一下迷津不胜感激!!!!下面是改变后不能运行的代码Ext.define('SMS.controller.MenuControll',{
extend: 'Ext.app.Controller',
refs:[
{ref: 'myMenu',selector: 'smsmenu'}
],
init:function(){
this.control({
'myMenu': {
itemmousedown: this.loadMenu
}
})
},
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货