Angular 2 Input Directive Изменение значения элемента управления формы
У меня есть простая директива Angular 2, которая изменяет входное значение текстового поля. Обратите внимание, что я использую модельно-управляемый подход к форме.
@Directive({
selector: '[appUpperCase]'
})
export class UpperCaseDirective{
constructor(private el: ElementRef, private control : NgControl) {
}
@HostListener('input',['$event']) onEvent($event){
console.log($event);
let upper = this.el.nativeElement.value.toUpperCase();
this.control.valueAccessor.writeValue(upper);
}
}
Дом обновляется должным образом, однако модель обновляется после каждого другого нажатия клавиши. Посмотрите наplnkr