Angular 4 - 2方式数据绑定输入元素

时间:2017-09-06 14:41:26

标签: angular data-binding

我目前正在使用Angular 4 with ionic来构建输入表单。我有一个场景,我希望输入字段自动将输入的值更改为更改时的2个小数位,例如用户输入5.132变为5.13。

到目前为止,我定义了以下输入:

<ion-input type="number" [ngModel]="printData.sale" (ngModelChange)="updateSaleValue($event)" step="0.01"
                 name="sale" required lessThan="original" extraLessThan="extraSale" reverse2="true" min="0.01" #sale="ngModel"></ion-input>

updateSaleValue函数将一个简单的舍入函数运行到两个小数位,并将结果赋给printData.sale。

当我第一次触发更改时测试它时,函数按预期运行(值四舍五入为2 dp,页面中的输入值显示输出)。

但是,任何后续更改都会触发updateSaleValue函数(我可以在添加控制台日志时看到),但输入元素中显示的相应值不会更新,即。 5.132仍为5.132。

有人能够解释为什么会这样,并建议我如何让它发挥作用?

根据要求,控制器功能如下

public updateSaleValue(string: price) {
  console.log('I'm here');
  this.printData.sale = formatFunction();
}

0 个答案:

没有答案