我正尝试在currency
元素上使用ion-input
管道,如下所示。
<ion-input type="number" name="amount"
[ngModel]="myObject.amount | currency"
(ngModelChange)="myObject.amount = $event">
</ion-input>
当我使用此one-way binding + event approach时,UI上的输入字段为空白。如果检查元素,则会在生成的ng-reflect-model="$100"
元素上看到input
属性值。但是,如果将type
更改为text,则确实看到了$ 100的渲染值。
<ion-input type="text" name="amount"
[ngModel]="myObject.amount | currency"
(ngModelChange)="myObject.amount = $event">
</ion-input>
现在的问题是如果用type="text"
而不是type="number"
,我会丢失数字键盘。关于如何通过显示数字键盘来实现这一点的任何想法?
我正在使用离子角v3.9.2。
答案 0 :(得分:0)
您可以尝试这样的事情,
<ion-input type="number" name="amount"
[ngModel]="myObject.amount"
(change)="updateAmount($event.target.value)">
</ion-input>
和.ts
中updateAmount(qp:number):void {
this.formattedAmount = this.currencyPipe.transform(this.amount, 'USD');
element.target.value = this.formattedAmount;
}