我想是因爲類型的輸入的元素之後調用 ngModelChange的無限循環中已經改變,這將導致調用管道「timeToNumber」這將導致ngModelChange再次叫你不能做這樣..
您可以通過另存一個變量來解決它:例如「value.valueForm」,它將保持您的管道版本值「value.value」。
例如:
<input type="time" step="1" placeholder="time in seconds.." name="myTime" #iTime #myTime="ngModel"
[ngModel]="value.valueForm"
(ngModelChange)="value.valueForm=onChange($event, iTime)" />
onChangeCash(eventStr: string, eRef): string {
var res = this.getNumberOnChange(eventStr, eRef); // gets current value of element using eRef. Pipe it and return new piped value as res.
this.value.value = this.getNumberOfStr(res); // gets new piped value as res and convert it to Model value you need to save.
return res;
}
對不起,不具有getNumberOnChange(),getNumberOfStr()的一個例子。