は、私は1つが、このカスタム属性のバインド可能なデコレータをoneWayまたはoneTimeにロックすることはできますか?
@bindable({ defaultBindingMode: bindingMode.oneTime }) maxSize: number;
ようdefaultBindingModeを持つ属性を宣言することができます知っているが、それのユーザーは、他のモードを指定することはできませんように、それを宣言することができますか?
は、私は1つが、このカスタム属性のバインド可能なデコレータをoneWayまたはoneTimeにロックすることはできますか?
@bindable({ defaultBindingMode: bindingMode.oneTime }) maxSize: number;
ようdefaultBindingModeを持つ属性を宣言することができます知っているが、それのユーザーは、他のモードを指定することはできませんように、それを宣言することができますか?
これは不可能で、Aureliaの「エボ」を無効にする必要があるまで、「大会は素晴らしいです」と反対します。既定のバインドモードを指定することにより、コンポーネントの規則を指定しています。
つまり、自分のコントロールの中に1回のバインディングを強制し、コントロールの任意のコンシューマーに対して1回限りのバインディングを強制することができます。
たとえば、カスタム属性では、bind
コールバックで属性に行うすべての操作を行い、変更されたコールバックは設定しないでください。または、カスタム要素では、コンポーネントビューのすべてのデータバインディングにone-time
バインディングコマンドを使用します。
それは私がやったことです。約15の "束縛"のうち3つだけが観察可能であり、他のすべてのものは構成要素がどのように見えるかという設定であり、変更不可能である。だから私は3つの "変更された"コールバックでのみフックを終了しました。 – epitka
バインドモードをロックする方法はないと思いますが、どうしてそうしたいのですか? –