JAvascript書き込み方式の8
1060 ワード
8.Ext.jsの書き方
ここではExt core 3を用いる.0,ExtではExt.extendでクラスを定義し(もちろんクラスを拡張するために使用されることが多い)、Extフレームワーク全体の各種コントロール、例えばPanel、MessageBoxなどはExt.extendメソッドで拡張されている.ここでは、最も簡単なクラスを定義するためにのみ使用します.
Ext.extendのコードを見ると、クラスは構造関数とプロトタイプで組み立てられていることがわかります.
ここでは2つのパラメータを渡すだけでよいが,1番目のパラメータはルートクラスObject,2番目はプロトタイプである.
特殊なのは、単純にクラスを定義すれば、最初のパラメータは常にObjectに伝達されます.
ここではExt core 3を用いる.0,ExtではExt.extendでクラスを定義し(もちろんクラスを拡張するために使用されることが多い)、Extフレームワーク全体の各種コントロール、例えばPanel、MessageBoxなどはExt.extendメソッドで拡張されている.ここでは、最も簡単なクラスを定義するためにのみ使用します.
Ext.extendのコードを見ると、クラスは構造関数とプロトタイプで組み立てられていることがわかります.
ここでは2つのパラメータを渡すだけでよいが,1番目のパラメータはルートクラスObject,2番目はプロトタイプである.
/**
* Person
* @param {Object} name
*/
var Person = Ext.extend(Object,{
constructor : function(name) {this.name = name;},
setName : function(name) {this.name = name;},
getName : function() {return this.name;}
});
//
var p = new Person("Lily");
console.log(p.getName());//Lily
p.setName("Andy");
console.log(p.getName());//Andy
// instanceof p.constructor Person
console.log(p instanceof Person);//true
console.log(p.constructor == Person);//true
特殊なのは、単純にクラスを定義すれば、最初のパラメータは常にObjectに伝達されます.