ext5 類 -1

ext5的文件管理比較方便,包括文件的加載(組件的引入),但這要知足必定的規範。javascript

1. 類的命名:java

  •   類名稱只能包含字母數字
  • 頂級的命名空間和最後的類名應該以駝峯方式命名,中間其餘的都應該小寫(MyCompany.form.action.AutoLoad)
  • 不要以Ext爲頂級的命名空間
  • 文件的存儲路徑要能根據類名直接映射到如:
    MyCompany.form.action.AutoLoad ->  ../MyCompany/form/action/AutoLoad.js
  • 方法和變量名稱只能包含字母數字
  • 靜態類的屬性是常量應該所有大寫:
    Ext.MessageBox.YES = 「Yes」
  •  

2. 類的定義:app

Ext.define(className, members, onClassCreated);

className類名, members類的變量方法等, onClassCreated類建立以後的回調函數。 函數

下面定義一個user類:this

Ext.define('Test.model.User',{
	config:{  //處理該配置中的屬性,都將被封裝成get/set
		name:'Mr.unknown',
		age:0,
		gender:'male',
        dept:{
           name:'dept name'
        }
	},
	phone:'unknow', 
	constructor:function(config){
		this.initConfig(config);  //初始化config配置中的值
		this.callParent(config);  //調用父類的構造方法
	},
	applyName:function(name){ //當調用setName時,Ext自動調用該方法
		if(name){
			return name;
		}
	},
	applyAge:function(age){
		if(Ext.isNumber(age) ){
			return age;
		}
		return 0;
	},
	applyPhone:function(phone){//該方法實際上是無效的,由於phone沒在config中
		if(!phone && phone.length = 11){
			return phone;
		}
		return 'please input'
	}
});

如java 同樣。如今的user也有了構造方法,EXt也幫咱們本身生成了get/set方法了code

實例化一個Userorm

var u1 = new User({
	name:'張三',
	age:'0',
	phone:'90480923'
});

u1.getName()  //張三
u1.setAge(45)
u1.getAge()   //45
u1.getDept().name  //dept name
u1.phone       //90..23ip

相關文章
相關標籤/搜索