注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

星期五

明天不上班

 
 
 

日志

 
 
关于我

一个特立独行的Java程序员,比较宅,上上网,写博客,听音乐,看电影。

网易考拉推荐

dijit widget中的own方法  

2014-01-06 23:16:26|  分类: Javascript |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
own方法是_WidgetBase从Destroyable中继承过来的方法,它的作用非常有用,就是在它里面注册的事件,都会在widget调用destroy方法时,一起被remove掉。
看看如何使用,我们一般会在postcreate中会注册自己的事件,例如:dijit/layout/StackController
         postCreate: function(){
this.inherited(arguments);

// Listen to notifications from StackContainer. This is tricky because the StackContainer may not have
// been created yet, so abstracting it through topics.
// Note: for TabContainer we can do this through bubbled events instead of topics; maybe that's
// all we support for 2.0?
this.own(
topic.subscribe(this.containerId + "-startup", lang.hitch(this, "onStartup")),
topic.subscribe(this.containerId + "-addChild", lang.hitch(this, "onAddChild")),
topic.subscribe(this.containerId + "-removeChild", lang.hitch(this, "onRemoveChild")),
topic.subscribe(this.containerId + "-selectChild", lang.hitch(this, "onSelectChild")),
topic.subscribe(this.containerId + "-containerKeyDown", lang.hitch(this, "onContainerKeyDown"))
);

// Listen for click events to select or close tabs.
// No need to worry about ENTER/SPACE key handling: tabs are selected via left/right arrow keys,
// and closed via shift-F10 (to show the close menu).
// Also, add flag to use normalized click handling from dojo/touch
this.containerNode.dojoClick = true;
this.own(on(this.containerNode, 'click', lang.hitch(this, function(evt){
var button = registry.getEnclosingWidget(evt.target);
if(button != this.containerNode && !button.disabled && button.page){
for(var target = evt.target; target !== this.containerNode; target = target.parentNode){
if(domClass.contains(target, this.buttonWidgetCloseClass)){
this.onCloseButtonClick(button.page);
break;
}else if(target == button.domNode){
this.onButtonClick(button.page);
break;
}
}
}
})));
},
无论是使用on,aspect注册还是使用topic,都会在destroy中被remove掉。
  评论这张
 
阅读(269)| 评论(0)
推荐

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017