Ext.util.Observableの使い方
1783 ワード
Ext.util.Observable
余談は言わないで、まず説明します.
Base class that provides a common interface for publishing events. Subclasses are expected to to have a property "events"with all the events defined, and, optionally, a property "listeners"with configured listeners defined.
簡単に言えば、「鶏肋」(ベースクラス)はイベントを公開するために共通のインタフェースを提供しています.もし誰かが自分のカスタムプラグインに自分の「奸細」を挿入したいなら、おめでとうございます.突破口を見つけました.それは、次の例です.
少し説明します.
1、 this.addEvents("fire","quite");
「fire」を付けなければ、私たちの結果も見られます.そのため、イベントのトリガはこことは関係ありません.
この役割は
eventsプロパティには、イベントを追加すると表示されます.そうすると、on(「バインドイベント」)のときに実行されます.そうしないとerrorに報告されます.
onが欲しくない場合は、登録せずにlistenerに直接追加すればいいです.
2、constructor:
必ずそれを実現しなければなりません.そうしないと、newのオブジェクトは、パラメータを初期化しません.observableはそれを指してご飯を作ってあげます.
3、誰かがここにいるかもしれない.user.name.superclass.constructor.call(this,config);ちょっと疑問ですが、
実はこれがjsの一般的なトリガ関数で、実行時に実際に実行されるのはthisというオブジェクトのconstructor関数です.
引用:
http://tieba.baidu.com/p/802936612
-
余談は言わないで、まず説明します.
Base class that provides a common interface for publishing events. Subclasses are expected to to have a property "events"with all the events defined, and, optionally, a property "listeners"with configured listeners defined.
簡単に言えば、「鶏肋」(ベースクラス)はイベントを公開するために共通のインタフェースを提供しています.もし誰かが自分のカスタムプラグインに自分の「奸細」を挿入したいなら、おめでとうございます.突破口を見つけました.それは、次の例です.
Ext.namespace('Hanshibin.user');
Hanshibin.user.name=Ext.extend(Ext.util.Observable,{
constructor:function(config){
this.name=config.name;
this.id=config.id;
this.addEvents("fire","quite");
this.listeners=config.listeners;
Hanshibin.user.name.superclass.constructor.call(this,config);
}
});
var username=new Hanshibin.user.name({
name:"hanshibin",
id:"001",
listeners:{
"fire":function(){alert('2222');}
}
});
username.fireEvent('fire');
少し説明します.
1、 this.addEvents("fire","quite");
「fire」を付けなければ、私たちの結果も見られます.そのため、イベントのトリガはこことは関係ありません.
この役割は
eventsプロパティには、イベントを追加すると表示されます.そうすると、on(「バインドイベント」)のときに実行されます.そうしないとerrorに報告されます.
onが欲しくない場合は、登録せずにlistenerに直接追加すればいいです.
2、constructor:
必ずそれを実現しなければなりません.そうしないと、newのオブジェクトは、パラメータを初期化しません.observableはそれを指してご飯を作ってあげます.
3、誰かがここにいるかもしれない.user.name.superclass.constructor.call(this,config);ちょっと疑問ですが、
実はこれがjsの一般的なトリガ関数で、実行時に実際に実行されるのはthisというオブジェクトのconstructor関数です.
引用:
http://tieba.baidu.com/p/802936612
-