如何在angular2中修补时应用管道来形成控制值

时间:2017-10-13 12:04:28

标签: angular angular2-forms angular-reactive-forms

我正在使用当前应用中的角度2的反应形式方法。我有很多输入字段,我正在修补我从服务器获得的json。

现在我得到了一个要求,就像我必须在显示时格式化值并在发送时发送实际值。

例如:输入货币字段必须使用逗号格式化为货币类型,而发送时只需要一个数字。

我怎样才能实现这一点。

我需要表单控件的值和显示值。

 <input type="text"  data-test="yearlyRevenue" formControlName="yearlyRevenue" [numberformat]="18" >

    numberformat is my custom directive to format the data

1 个答案:

答案 0 :(得分:1)

blog.ngconsultant.io中有一个例子。

当“模糊”和“焦点”发生时,“键”使用Hotlistener。如果你有两个函数“transform”和“parse”,你可以做

ngOnInit() {
    this.el.value = this.transform(this.el.value);
}

@HostListener("focus", ["$event.target.value"])
onFocus(value) {
   this.el.value = this.parse(value); // opossite of transform
 }

@HostListener("blur", ["$event.target.value"])
  onBlur(value) {
    this.el.value = this.transform(value);
}