我有一个输入字段,其输入应该是一个正数。
<input type="number" [(ngModel)]='assetValue'
type="number" pattern="positiveNumberRegex">
positiveNumber()
返回一个正则表达式。我将它的字符串值存储在一个变量中。这是在 OnInit 生命周期钩子中完成的。
this.positiveNumberRegex = this.regexPatternService.positiveNumber().source;
console.log(this.positiveNumberRegex); // ^[1-9][0-9]*[.]?[0-9]*$
但是当我输入一个正数时验证失败。
如果我将正则表达式硬编码为模式指令,它就可以正常工作。
<input type="number" [(ngModel)]='assetValue'
type="number" pattern="^[1-9][0-9]*[.]?[0-9]*$">
这是什么原因?