Я хочу изменить представление и данные модели на вкладке с событием onBlur по директиве.
Я написал эту функцию для обновления вида и модели:
@HostListener('blur',['$event'])
blur(e:Event){
const target:HTMLInputElement = <HTMLInputElement>e.target;
const val = this.decimalPipe.transform(target.value.replace(/\,/g,''),'1.2-2');
this.ngModel.viewToModelUpdate(Number(val.replace(/\,/g,'')));
this.ngModel.valueAccessor.writeValue(val);
}
Это хорошо работает, но когда я хочу определить элемент управления формой при вводе this.ngModel.viewToModelUpdate
не влияет на модель.
Код группы групп:
form = new FormGroup({amountInput:new FormControl('',Validators.min(this.traderService.trader.sMPA)),
});
Он видел, что игнорирует эту функцию и задает модель как строку. Как обновить модель как число?
Попробуй использовать:
this.ngModel.control.patchValue(Number(val.replace(/\,/g,'')));
вместо
this.ngModel.viewToModelUpdate(Number(val.replace(/\,/g,'')));
Имел ту же проблему с пользовательской директивой для ввода с помощью formControl на Angular 5.