나는이처럼 보이는 각도 2 컨트롤러있어 :각도 2 : 구성 요소의 특성을 변경하는 특성 변경을 어떻게 검색합니까?
@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
});
}
}
을하지만 템플릿에서 value
값이 변경 바인딩 때
<my-component [value]="someValue" /> <!-- valueChange not triggered! -->
가 valueChange
이벤트가 너무 트리거되지 않습니다, 템플릿이 올바르게 업데이트되고 새 값이 표시 되더라도 구성 요소는 변경되었음을 알 수 없습니다.
컨트롤러의 입력 속성이 변경되면 어떻게 감지합니까?
\ @Component 데코레이터에서 inputs 속성을 사용할 수 있습니다. * 또는 set 속성에서 \ @Input 데코레이터를 사용할 수 있습니다. 그들은 현재 모두 작동하고 \ @Input 데코레이터가 현재 선호되는 방법 인 것 같습니다 –
get 접근자가 값을 가질 수없고 가질 수없는 경우 get 메소드를 {get}() {}로 업데이트 할 수 있습니다. 생각합니다. 당신의'@ output' 또한'@Output()'으로 업데이트 될 필요가 있습니다. –