Angular 2: Wie erkenne ich Attributänderungen an Eingabeattributen für eine Komponente?

Ich habe einen Angular 2 Controller, der so aussieht:

@Component({
  selector: 'my-component',
  template: '<div>The value is: {{ value }}</div>',
})
class MyComponent implements OnInit {
  @Input()
  value: string;

  @Output
  valueChange = new EventEmitter<number>();

  ngOnInit() {
    this.valueChange.subscribe(value => {
      console.log('new value:', value); // <-- does not get triggered
    });
  }
}

Aber wenn der Wert vonvalue Änderungen von einer Vorlagenbindung:

<my-component [value]="someValue" /> <!-- valueChange not triggered! -->

DasvalueChangeas @ -Ereignis wird nicht ausgelöst. Obwohl die Vorlage korrekt aktualisiert wird und den neuen Wert anzeigt, weiß die Komponente nicht, dass er geändert wurde.

Wie kann ich erkennen, wenn Eingabeattribute auf meinem Controller geändert werden?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage