<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Ext.namespace解析

    文章分類:Web前端
    對于這個函數,我一直不太清楚,今天查了查官方的解釋,豁然開朗。

    對于java中的包,我們都認為主要是為了類名重復而引入的一種管理類的方法。同樣,因為js定義的類太多,難免會定義重復的類名。特別是在今天這個需要共同協(xié)作完成項目的世界里。Ext.namespace正是為此而生。

    Ext.namespace('com.company');
    就是定義了一個com.company的包。

    com.company.ClassA = function(){};就是定義了com.company包下面的一個Class。你一定會問,既然定義了包,為什么還要寫包的前綴 com.company?我直接寫com.company.ClassA = function(){}不行嗎?對,一開始我也有這樣的疑惑,com.company.ClassA不就是一個變量名稱嗎?哪兒來的包。后來經實 踐,javascript的變量名稱是不準包括'.'的。因此,直接寫com.company.ClassA = function(){};在語法上是不正確的。

    現(xiàn)在想起來Ext在namespace的解決方法了。查看ext的官方解釋,如果我們不用Ext.namespace的話,創(chuàng)建命名空間應該這樣。

    if (!App) App = {};
    if (!App.form) App.form = {};
    if (!App.data) App.data = {};

    而 Ext.namespace('App', 'App.form', 'App.data');
    則跟上面3句話的作用是一樣的。

    可以看出,這個包其本質上是一個對象,一個window的變量。也就是說,我們的包是一個分層次的對象。如com.company,應該解釋成 com對象的一個屬性 company。如果定義這個包下面的類,則應該把這個類添加到com對象的屬性company的屬性里面。

    到此,ext的 namespace的實現(xiàn)機制基本上就出來了。盡管實現(xiàn)包的方法很牽強,但目前可能是一個比較好的解決方案了。
    posted on 2011-04-08 14:36 sanmao 閱讀(161) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發(fā)表評論。


    網站導航:
    博客園   IT新聞   Chat2DB   C++博客   博問  
     

    常用鏈接

    留言簿(5)

    隨筆分類

    隨筆檔案

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲精品夜夜夜妓女网| 中文字幕精品亚洲无线码一区应用| 亚洲av色影在线| a级毛片毛片免费观看久潮| 亚洲国产综合精品一区在线播放| 亚洲爆乳大丰满无码专区| 成人免费在线观看网站| 亚洲色精品三区二区一区| 狼友av永久网站免费观看| 亚洲AV永久无码精品网站在线观看| 日韩a级毛片免费视频| 国产精品亚洲专区无码牛牛| 日本一区二区三区日本免费| 国产成人亚洲精品电影| 中文字幕日韩亚洲| 一级毛片全部免费播放| 精品日韩99亚洲的在线发布| 久久久久久精品免费看SSS| 亚洲精品无码久久久久牙蜜区| 国产精品深夜福利免费观看| 羞羞视频免费网站日本| 久久久无码精品亚洲日韩蜜桃| 老汉精品免费AV在线播放| 亚洲精品综合在线影院| 免费少妇a级毛片| 国产色爽免费无码视频| 亚洲第一页中文字幕| 永久久久免费浮力影院| 东北美女野外bbwbbw免费| 亚洲精品中文字幕乱码| 永久在线毛片免费观看| 成人A毛片免费观看网站| 亚洲综合小说久久另类区| 国产高清在线免费| 免费91最新地址永久入口| 亚洲AV综合色区无码二区偷拍| 免费一级毛片在线播放不收费| 99国产精品免费视频观看| 国产精品亚洲专区无码WEB| 亚洲AV色香蕉一区二区| 国产免费久久精品|