私はいくつかの角度コンポーネントを構築してきましたが、一方向 ("<") バインディングと属性 ("@") バインディングの実際の違いは何だろうと思っていました。
一方が他方よりも好ましいシナリオはありますか? 属性が常に不変の文字列であり、補間する必要があるのは簡単ですか?
私はいくつかの角度コンポーネントを構築してきましたが、一方向 ("<") バインディングと属性 ("@") バインディングの実際の違いは何だろうと思っていました。
一方が他方よりも好ましいシナリオはありますか? 属性が常に不変の文字列であり、補間する必要があるのは簡単ですか?
https://docs.angularjs.org/guide/componentから:
@ バインディングは、入力が文字列の場合、特にバインディングの値が変更されない場合に使用できます。
https://docs.angularjs.org/api/ng/service/ $compile#-scope-から
"@" - ローカル スコープ プロパティを DOM 属性の値にバインドします。DOM 属性は文字列であるため、結果は常に文字列になります。
"<" - ローカル スコープ プロパティと属性を介して渡される式との間の一方向 (一方向) バインディングを設定します。
したがって、文字列値を渡すには「@」を使用します。値は、myattr="hello" などの単純な文字列値にすることも、myattr="my_{{helloText}}" などの式が埋め込まれた AngularJS 補間文字列にすることもできます。