angular - 如何在 PrimeNg 中获取没有掩码字符的值?

标签 angular typescript mask primeng

我正在为我们的 Angular 项目使用 primeNG UI 库。我使用 primeng 掩码来格式化值。

        <p-inputMask type="text" name="IBANAccount"
                                     #IBANAccount="ngModel"
                                     mask="aa99 9999 9999 9999"
                                     (onBlur)="OnIBANAccountChange()"
                        [ngModel]="CurrentPaymentOutRequest?.IBANAccount"  (ngModelChange)="CurrentPaymentOutRequest.IBANAccount=UnMask($event)">
</p-inputMask>

在我的 Unmask 方法中,我删除了掩码值。

UnMask(val) {
    return val.replace(/\s/g, '');
}

我有几个问题。

为什么要屏蔽,绑定(bind)屏蔽字符(ex:/,-,etc)?

是否有任何其他方法可以全局处理此问题?因为将来如果格式发生变化,我应该在所有地方进行更改

最佳答案

unmask 属性(默认情况下为 false)设置为 true 以获取原始值。

例子:

<p-inputMask mask="aa99 9999 9999 9999" unmask="true"></p-inputMask>

要全局设置它,您可以使用 p-inputMask 作为选择器创建一个指令(不要忘记在您的模块中声明它),例如:

import {Directive, Host} from '@angular/core';
import {InputMask} from 'primeng/primeng';

@Directive({
  selector: 'p-inputMask'
})
export class InputMaskDefaultDirective {
  constructor(@Host() private inputMask: InputMask) {
    this.inputMask.unmask = true;
  }
}

关于angular - 如何在 PrimeNg 中获取没有掩码字符的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51597633/

相关文章:

AngularFire2 在 Typescript 中获取经过身份验证的用户 ID

javascript - 基于排序数组更新组件。 Angular (4.3)

python - 计算沿圆形路径的图像像素总和

javascript - angular2 ngOnChanges 不适用于多个输入

javascript - angular2 - 跳过 ngFor 中的第一项

angular - 类型错误 : Converting circular structure to JSON when trying to POST request

reactjs - react typescript 和 useCallback

typescript - TS 从 ES6 文件导入

java - 屏蔽字符串的一部分

html - 如何用两个 div 制作一个 photoshop 风格的剪贴蒙版