当模型在ngModelChange之后保持不变时,角度4重新绑定

问题描述 投票:1回答:1

我有一个输入

<input [(ngModel)]="plot" type="number" step="0.01" (ngModelChange)="onPlotChange($event)" />

onPlotChange(value) {
    this.plot = value;
    this.plot = Math.round(this.plot * 100) / 100;
}

当我输入一个数字时,让我们说 - 1.956,它会立即变为1.96,因为它被向上舍入,this.plot不同于该值被反弹到视图中。

当我输入 - 1.951时,它在视图中保持不变,因为更改前的模型值为1.95,更改后为1.95,因此它不会检测到任何更改,也不会将值重新绑定到视图中因此视图保持.1951。

如何强制角度将值重新绑定到视图?

http://plnkr.co/kJxF7rixZXQdWRMnVoRd输入0.956 - 预期结果0.96输入0.951 - 预期结果0.95,实际结果在视图中0.951

javascript angular
1个回答
0
投票

有一种替代解决方案可以达到预期的效果。您可以使用angular(keyup)事件

<input [(ngModel)]="plot" type="number" step="0.01" (keyup)="onPlotChange(plot)" />

    onPlotChange(value) {
      this.plot=value;
        this.plot = Math.round(this.plot * 100) / 100;

}
© www.soinside.com 2019 - 2024. All rights reserved.