本文介绍了Angular 2 ngModelChange 旧值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

谁能告诉我比较 ngModel 旧值和新值的最佳做法是什么?

Can someone please tell me what is the best practice for comparing ngModel old and new value?

在角度 1 中:

$scope.$watch('someProperty', funciton(oldVal, newVal){
    // code goes here
})

我问这个是因为 (ngModelChange) 从来没有给我带来 oldVal ,只有 newVal .

I am asking this because (ngModelChange) never brings me the oldVal , only the newVal.

就我而言,我在 标签中使用 ngModel 并将旧选择与新选择进行比较:

In my case, I am using ngModel in a <select> tag and compare the old selection with the new one:

<select [(ngModel)]="current" (ngModelChange)="onModelChange($event)">
     <option *ngFor="let item of myArray" [ngValue]="item">{{item.name}} </option>
</select>

推荐答案

这可能有用

(ngModelChange)="onModelChange(oldVal, $event); oldVal = $event;"

(ngModelChange)="onModelChange($event)"
oldValue:string;
onModelChange(event) {
  if(this.oldValue != event) {
    ...
  }
  this.oldValue = event;
}

这篇关于Angular 2 ngModelChange 旧值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-02 02:47