如何修复'数字'类型的参数不能分配给'字符串类型的参数|正则表达式

时间:2019-09-19 22:31:43

标签: javascript regex angular typescript

我试图防止用户使用任何特殊符号,也要防止空格中没有字符。当我尝试将其放在FormGroup Validator上时,出现错误,提示“类型为'number'的参数不能分配给类型为'string'的参数| RegExp''

this.houseForm = this.fb.group({
      address: [
        null,         
        [Validators.required, Validators.pattern(^[A-Za-z0-9 ]*[A-Za-z0-9][A-Za-z0-9 ]*)],
      ]
    });

1 个答案:

答案 0 :(得分:2)

Validators.pattern()期望使用字符串或正则表达式。您都不提供。

您已经提供了^[A-Za-z0-9 ]*[A-Za-z0-9][A-Za-z0-9 ]*,但您需要的是:

/^[A-Za-z0-9 ]*[A-Za-z0-9][A-Za-z0-9 ]*/

'^[A-Za-z0-9 ]*[A-Za-z0-9][A-Za-z0-9 ]*'

对于正则表达式,必须用斜杠/括起来,对于字符串,则用引号'包围。

https://angular.io/api/forms/Validators#pattern