ng6中ngModelChange如何获取change前ngModel绑定的值

在ng6中双向绑定的表单元素可以通过ngModelChange监听绑定值得改变,并且可以通过ngModelChange($event)来获取到当前绑定元素的值。使用$event时获取到的是改变后的值,此时没有任何问题。

但是用ngModelChange直接获取绑定的变量时,有时候获取到的是change前的值,有时候是chang后的值,如下图

ng6中ngModelChange如何获取change前ngModel绑定的值

 

 ng6中ngModelChange如何获取change前ngModel绑定的值

 

 造成这个问题的原因是ngModelChange和ngModel的顺序问题,

当ngModel在ngModelChange前面时获取到的绑定的变量是修改以后的值,代码如下

ng6中ngModelChange如何获取change前ngModel绑定的值

 

 而当ngModelChange在ngModel前面时获取到的绑定的变量就是修改前的值,代码如下

ng6中ngModelChange如何获取change前ngModel绑定的值

 

 因此,我们在使用ngModelChange时将ngModelChange放到ngModel前面就可以同时获取绑定变量前后的两个值了,代码如下图

ng6中ngModelChange如何获取change前ngModel绑定的值

 

 ng6中ngModelChange如何获取change前ngModel绑定的值

 

 

效果如下

ng6中ngModelChange如何获取change前ngModel绑定的值

 

上一篇:springcloud(九):配置中心和消息总线(配置中心终结版)


下一篇:java – 强制选项卡内容在异步任务完成后更新