夢幻之旅

          DEBUG - 天道酬勤

             :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            671 隨筆 :: 6 文章 :: 256 評論 :: 0 Trackbacks

          在項目中使用ExtJS已經有一段時間了, 對于這個龐大的Script類庫有了一定的了解, 在Ext的使用上也有了一定的經驗, 現將這些經驗做一下總結, 作為一個入門材料給大家分享。 對于Ext庫, 不要被它的龐大所嚇倒, 只要靜下心來看SDK, 多做一些練習, 還是很容易上手的。

          ExtJS 中的類與繼承

            在Ext下, 定義一個JavaScript類似乎沒有什么特別的, 可以直接聲明一個構造函數, 并使用關鍵字new來進行初始化。 有一點值得注意的是在Ext中頻繁出現的Singleton類, 普遍定義為:

          image_thumb6

          然后就可以直接調用Foo的方法了, 其實這段代碼可以理解為

          image_thumb9 
          這樣,就容易理解了。
          談到類和繼承, 有幾個函數必須注意, Ext.apply、 Ext.applyIf和Ext.extend:
          1. Ext.apply(obj, config, [defaults]) 將config對象的所有屬性都復制到另一個對象obj上, 第三個參數defaults可以用來提供默認值, 不過通常指用前兩個參數就夠了。 這個函數主要用在構造函數中, 用來將配置復制到對象上。
          2. Ext.applyIf(obj, config) 和Ext.apply的功能類似, 唯一不同的是, 這個函數只會將config對象中有, 而obj對象中沒有的屬性復制到obj上。
          3. Ext.extend(subclass, superclass, [overrides]) 用來繼承已有的類, 通常的使用方法是
            var SubClass = function() {    SubClass.superclass.constructor.call(this); }; Ext.extend(SubClass, BaseClass, {    newMethod : function() {},    overriddenMethod : function() {} };
            在上面的代碼中, SubClass繼承自BaseClass,  添加了新的方法newMethod, 重寫了overriddenMethod方法。
             
          個人認為, 要扎實的掌握ExtJS, 并且能夠對原有類庫進行擴展, 掌握以上的方法是必須的, 也是入門的必經之路。
          posted on 2011-07-05 09:43 HUIKK 閱讀(839) 評論(0)  編輯  收藏 所屬分類: EXT
          主站蜘蛛池模板: 嘉鱼县| 神农架林区| 项城市| 修武县| 武宁县| 荔波县| 吴江市| 英德市| 山丹县| 龙岩市| 遂溪县| 荔波县| 谢通门县| 卓资县| 东海县| 阜南县| 霍山县| 广东省| 炎陵县| 博兴县| 广水市| 鄢陵县| 太仆寺旗| 界首市| 囊谦县| 衡东县| 邢台县| 当雄县| 徐闻县| 永安市| 泾阳县| 海宁市| 贵定县| 同江市| 北流市| 福海县| 龙游县| 湛江市| 巴中市| 扶风县| 喀喇|