変数に [Bindable] タグが含まれていれば、コンポーネントのパラメーターを変数に依存させることができることを知っています。これは、Bindable 変数の値を更新すると、コンポーネントが自動的に更新されることを意味します。
別の変数をバインド可能な変数に依存させることは可能ですか?
以下の例では、変数 btnClicked がバインドされています。関数 btnClick() が呼び出されて btnClicked が変更されると、TextArea 内のテキストが期待どおりに更新されます。
btnClicked が更新されたときに、別の変数 btnText を更新できるようにしたいと考えています。この依存関係を伝える方法がわかりません。以下のコードでは、btnText の値は最初は予想どおり「clickMe」です。ただし、btnClicked が変更されても、ボタンのテキストは「unclickMe」に更新されません。
<fx:Script>
<![CDATA[
[Bindable]
public var btnClicked:Boolean = false;
public function btnClick():void{
btnClicked = !btnClicked;
}
[Bindable]
public function get btnText():String{
return btnClicked?"unclickMe":"clickMe";
}
]]>
</fx:Script>
<s:Button click="btnClick()" label="{btnText}"/>
<s:TextArea y="50" text="{btnClicked?'Button is clicked':'Button is unclicked'}"/>
btnClicked が変更されたときに btnText が自動的に更新されるように、上記のコードを変更するにはどうすればよいですか?
前の変数が更新されたときにそれぞれが更新される、接続された変数の任意の長さのチェーンを持つことは可能でしょうか?