Angular7中ngModelChange监听数据滞后
使用ionic开发时发现(ngModelChange)绑定的 formatPersonTel(personTel) 函数中获取的 personTel值总是慢一步, formatPersonTel方法拿到的值是上一次的值,比如输入a时 formatPersonTel方法获取不到值,输入b时 formatPersonTel方法获取到的是a
<ion-input class="login-input input-spacing"
type="tel"
maxlength="11"
minlength="11"
(ngModelChange)="formatPersonTel(personTel)"
[(ngModel)]="personTel">
</ion-input>
解决方法:
将ngModel放在ngModelChange的方法前面,初步猜测可能是二者的执行顺序与放置顺序有关,如果ngModelChange放在ngModel前面导致formatPersonTel 函数先执行,获取到的值是ngModel的旧值
<ion-input class="login-input input-spacing"
type="tel"
maxlength="11"
minlength="11"
[(ngModel)]="personTel"
(ngModelChange)="formatPersonTel(personTel)">
</ion-input>