我遇到了一些奇怪的事情,但也許有人遇到過這種情況。帶有元數據[Bindable]關鍵字的基類會自動擴展EventDispatcher嗎?
我有一個基類,它沒有擴展任何東西。讓我們把它...
public class FooBar {
//...
}
但我想結合其公開屬性的每一個:
[Bindable] public class FooBar {
public var propertyOne:String;
public var propertyTwo:String;
}
在調試/剖析類的,我注意到,每次一個屬性更改 - FooBar的實例正在調用「.dispatchEvent()」。但我的班級沒有延伸EventDispatcher。
什麼給?
這是否意味着,在編譯時,我的類會自動擴展EventDispatcher或其他一些能夠分派事件的類?如果我的班級沒有在其中聲明的「addEventListener」方法,我怎麼能聽到PropertyChangeEvent?
從來沒有注意到這一點,有趣! – Exort
有點發現更新:實際上,IEventDispatcher接口中聲明的所有方法都可用於該類。代碼會很好的編譯,我只是試了一下。另一位開發人員在他的Bindable類中自己調用「dispatchEvent()」時遇到了同樣神祕的背景活動。從技術上講,這意味着只需要聲明一個屬性或者Getter/Setter [Bindable]來使類實現IEventDispatcher,而不一定是整個類。 – bigp
這裏是上面提到的開發人員的來源:http://old.nabble.com/-Bindable--and-dispatchEvent-td13765582.html – bigp