このサイトのリンクテキストを参照します
[Bindable] タグで間違ったイベント名を使用すると、アプリケーションがプロパティをバインドしない可能性があり、その理由はわかりません。カスタム名で [Bindable] タグを使用する場合、次の例は良いアイデアのように見えます。
public static const EVENT_CHANGED_CONST:String = "eventChangedConst";
private var _number:Number = 0;
[Bindable(event=EVENT_CHANGED_CONST)]
public function get number():Number
{
return _number;
}
public function set number(value:Number) : void
{
_number = value;
dispatchEvent(new Event(EVENT_CHANGED_CONST));
}
上記のコードは、静的プロパティをイベント名に割り当て、同じ割り当てを使用してイベントをディスパッチします。ただし、値が変更されると、バインドが機能していないように見えます。その理由は、イベント名が変数の値ではなく EVENT_CHANGED_CONST になるためです。
コードは次のように記述されているはずです。
public static const EVENT_CHANGED_CONST:String = "eventChangedConst";
private var _number:Number = 0;
[Bindable(event="eventChangedConst")]
public function get number():Number
{
return _number;
}
public function set number(value:Number) : void
{
_number = value;
dispatchEvent(new Event(EVENT_CHANGED_CONST));
}
私は同意します。間違った例は良い考えのように見えます。私はそれが正しい方法であり、入力エラーの可能性を回避できると思うので、そのようにします。値の代わりに定数の名前が使用されるのはなぜですか? さすがにこれはいけませんよね?
あなたの洞察に感謝します