【ExtJS】關於自訂群組件

來源:互聯網
上載者:User

標籤:style   blog   http   color   io   使用   ar   strong   for   

一、命名規範  在你編碼過程中對類,名字空間以及檔案名稱使用統一的命名規則對你代碼的組織,結構化以及可讀性有很大的好處。1、類命名規範:  類名最好只包含字母,在多數情況下,數字是不鼓勵使用的,除非非要用不可,也不要使用底線,-以及其它非字母字元,例如:     MyCompany.useful_util.Debug_Toolbar 不鼓勵這樣命名     MyCompany.util.Base64 可接受的命名   類名最好包括組織,在適當的名字空間通過使用.來訪問對象屬性,至少,類名應該有一個頂層的包。例如:     MyCompany.data.CoolProxy     MyCompany.Application

  頂層的包名以及實際的類名應該使用CamelCased命名規範,其它應該為小寫,如下:     MyCompany.form.action.AutoLoad   不要使用Ext作為頂層包名,首字母應該遵循CamelCased命名規範,如:     Ext.data.JsonProxy instead of Ext.data.JSONProxy     MyCompany.util.HtmlParser instead of MyCompary.parser.HTMLParser     MyCompany.server.Http instead of MyCompany.server.HTTP 2、源檔案命名規範:  類名直接映射到儲存該類的檔案路徑,因此,每個檔案只能有一個類,如     Ext.util.Observable is stored in path/to/src/Ext/util/Observable.js     Ext.form.action.Submit is stored in path/to/src/Ext/form/action/Submit.js     MyCompany.chart.axis.Numeric is stored in path/to/src/MyCompany/chart/axis/Numeric.js  path/to/src目錄包含應用的所有類,所有類應該放在這個公用根目錄下,以合適的名字空間來獲得最好的開發,管理以及部署體驗。   方法以及變數的命名規則與類命名相似,方法和變數的命名也只包含字母,數字不鼓勵使用,除非必須用到,同樣不使用底線,-以及其它非字母字元。  方法和變數命名應該遵循CamelCased命名規範,應適用首字母。例如    可接受的方法名:       encodeUsingMd5()      用getHtml() 替代 getHTML()       用getJsonResponse()替代 getJSONResponse()      用 parseXmlContent()替代parseXMLContent()    可接受的變數名:       var isGoodName       var base64Encoder       var xmlReader       var httpServer3、屬性命名:  類屬性命名和上面方法以及變數一樣,除了當屬性是靜態常量的時候。  當屬性是靜態常量時,字母應該大寫。     Ext.MessageBox.YES = "Yes"     Ext.MessageBox.YES = "Yes"     Ext.MessageBox.NO = "No"     MyCompany.alien.Math.PI = "4.13"  二、define  在ExtJS4之前,使用Ext.extend來建立類,在ExtJS4之後,使用Ext.define來建立類。
  基本文法:  Ext.define(className, members, onClassCreated);  其中,    className:類名    members:這是一個對象,它表示一個以索引值對形式表示的類成員集合。    onClassCreated:這是一個可定製的回呼函數,當這個類所依賴的類都準備完畢時便會調用這個回呼函數,並且類本身將會完全建立。由於有這個類建立新非同步屬性,這個回調在很多情況都會很有用。 例:
 1 Ext.define(‘MyComponent.getWH‘, { 2     showSize: function(){ 3             var dom = Ext.get(Ext.getBody().dom); 4             Ext.Msg.alert(‘My Component WH‘,‘Dom Width: ‘ + dom.getWidth() + ‘<br />Dom Height: ‘ + dom.getHeight()); 5     } 6 }); 7 Ext.onReady(function(){ 8     var myPanel = Ext.create(‘MyComponent.getWH‘,{ 9         renderTo: Ext.getBody()10     });11     myPanel.showSize();12 });

效果:

   

接下來的目標,就是在不同需求中,各種布局之下的組件功能的定製。

 

 

【ExtJS】關於自訂群組件

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.