Java JavaScript Web2.0

          WWW World, Jack's World
          posts - 9, comments - 28, trackbacks - 0, articles - 0
            BlogJava :: 首頁 ::  :: 聯系 :: 聚合  :: 管理

          關于Namespace, YUI和Dojo對此問題的異同

          Posted on 2007-08-28 19:10 Jack L 閱讀(751) 評論(0)  編輯  收藏 所屬分類: JavaScript

          YUI和Dojo的widget都必須存在于自己的名字空間內,這些名字空間是預先建立好的。 那么,如果我們要建立自己的名字空間怎么辦呢?(產生這種需求的原因通常是,我們要管理難以管理的JavaScript代碼。)


          在YUI中:

           執行

          1. YAHOO.namespace ("myspace");

           然后你就擁有了YAHOO.myspace這個名字空間,可以進行類似如下的操作:

          2. YAHOO.myspace.alertHello=function() {alert("Hello");}

          實質上,YUI.namespace相當于建立了一個表項,準確地說是相聯數組(associative array)的一項。 我們可以用以下兩句代替上面的1、2語句

          1)YAHOO["myspace"]=new function(){};

          2)YAHOO["myspace"].alertHello=function(){ alert("Hello");};

          而且1、2與1)、2)可以交叉組合使用。

           不管你使用哪種方式創建自己的名字空間,都有兩種方式調用alertHello

          a. YAHOO["myspace"].alertHello();

          b. YAHOO.myspace.alertHello();


          在Dojo中:

          使用方式參考:dojo_custom-namespace

          Dojo.require()提供了更強大的名字空間管理工具:Dojo用module來對應名字空間的含義。 我尚為對其相關函數的原理進行深入研究,也沒有尋找等價的使用方式。

           但是,注意手冊中這句話:“First of all, you'll want to create a directory structure ...”。也就是說,Dojo的module一定要對應一個js文件。

          所以dojo.require機制不是為了創建只存在于邏輯上的名字空間。 dojo.require一定會去下載相應的js文件,參考dojo 0.9的手冊: dojo-require



          評論

          # re: 關于Namespace, YUI和Dojo對此問題的異同  回復  更多評論   

          2007-08-28 20:32 by 姜利陽
          歡迎新隊員

          # re: 關于Namespace, YUI和Dojo對此問題的異同  回復  更多評論   

          2007-08-28 21:46 by Jack L
          3X:)
          主站蜘蛛池模板: 深水埗区| 固安县| 英山县| 北京市| 津南区| 峨眉山市| 丰顺县| 望江县| 德钦县| 赤城县| 邯郸县| 法库县| 云安县| 博湖县| 阿城市| 集贤县| 东台市| 东阿县| 雷山县| 清丰县| 巢湖市| 南开区| 伊吾县| 鄯善县| 洛宁县| 三河市| 炎陵县| 龙口市| 格尔木市| 吴旗县| 长乐市| 天峨县| 江源县| 黑水县| 平顺县| 永泰县| 将乐县| 郓城县| 米脂县| 伊宁市| 和静县|