我正在使用 onchange 将我的输入范围的值保存到 firebase 中,但是我有一个错误说我的函数没有定义。

这是我的功能

saverange(){
  this.Platform.ready().then(() => {
    this.rootRef.child("users").child(this.UserID).child('range').set(this.range)
  })
}

这是我的 html
<ion-item>
  <ion-row>
    <ion-col>Rayon <span favorite><strong> {{range}} km</strong></span></ion-col>
    <ion-col><input type="range" name="points" min="0" max="40" [(ngModel)]="range" onchange="saverange()"></ion-col>
  </ion-row>
</ion-item>

如果存在,则相当于 angular 的 onchange 。
谢谢

最佳答案



由于 changethe list of standard DOM events 上,我们可以使用它:

(change)="saverange()"

在您的特定情况下,由于您使用的是 NgModel,您可以像这样分解双向绑定(bind):
[ngModel]="range" (ngModelChange)="saverange($event)"

然后
saverange(newValue) {
  this.range = newValue;
  this.Platform.ready().then(() => {
     this.rootRef.child("users").child(this.UserID).child('range').set(this.range)
  })
}

但是,使用这种方法,每次击键都会调用 saverange() ,因此最好使用 (change)

关于angular - angular2 中的 onchange 等价物,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36366375/

10-12 21:52