次のような入力プロパティを持つカスタム コンポーネントがあります。
export class MyComponent{
@Input() value:number;
}
親コンポーネントにプロットできるように:
<my-component [(value)]="someValueAtParentComponent"></my-component>
@Component デコレータと親コンポーネントのクラスは提供していないことに注意してください。これらは関連性がないと思うからです。
これで、 MyComponent の内部で の値を変更できることが起こりますvalue
。
MyComponent のテンプレート内から を表示する{{value}}
と、有効期間を通じて正しい値が表示されます。
親コンポーネントのテンプレートから を表示{{someValueAtParentComponent}}
しますが、MyComponent の値で更新されません。[(value)] は自動的に仕事をすると思っていましたが、そうではないと思います。
親コンポーネントが明示的@Output
に設定されるイベントを処理するために MyComponent でイベントを作成したくありません。someValueAtParentComponent
Angular は、親コンポーネントが処理するイベントを発行したいと考えていますが、それは非常に面倒です。[(value)]
の代わりにシンタックス シュガーを使用できるように、独自のコンポーネントでできることはあり[value]="..." (onValueChanged)="onValueChangedHandler($event)"
ますか?