我的Angular 2编写的自定义指令有问题。我想防止在逗号后输入超过1位数。当我输入可以正确的数字时,但是当我用逗号和1位数字输入数字后,我就不能在逗号之前放入任何键。
export class InputTemplateDirective {
constructor(private el: ElementRef) {}
@Input('inputTemplate') highlightColor: number;
@HostListener('keypress',['$event']) _onKeyPress(e){
let pattern = /^-?\d*\,?\d*$/;
if (e.key==="." || this.el.nativeElement.value.length>=14 || pattern.exec(this.el.nativeElement.value)===null)
e.preventDefault();
}
}