我试图用 ngx-mask 隐藏输入字段中除最后 4 个字符之外的所有文本。因此,如果字符串是“AZ123X231S”,那么在输入文本框中它应该显示为“******231S”。
我已经添加了这样的输入字段
<input type="text" [patterns]="pattern" [hiddenInput]="true" [mask]="generateMaskPattern()" class="form-control" [id]="secureInput" [formControlName]="secureInput" [name]="secureInput" />
其中 pattern 定义为
pattern = {
X: {
pattern: /./,
symbol: 'X'
},
0: {
pattern: /./
}
};
并且 generateMaskPattern() 方法定义为
generateMaskPattern(): string {
let selectedValue: string = this.form.get(this.model.key)?.value;
const maskLength = Math.max(selectedValue.length - 4, 0);
const maskPattern = 'X'.repeat(maskLength) + '0000';
return maskPattern;
}
我没有得到预期的结果。