javascript - 如何修复 ' Argument of type ' 数字“无法分配给类型 'string | RegExp' 的参数”

标签 javascript regex angular typescript

我试图阻止用户使用任何特殊符号以及没有字符的空格。当我尝试将其放在 FormGroup 验证器上时,出现错误,提示“‘number’类型的参数不可分配给‘string | 类型的参数’”正则表达式''

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

最佳答案

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

关于javascript - 如何修复 ' Argument of type ' 数字“无法分配给类型 'string | RegExp' 的参数”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58019626/

相关文章:

javascript - 强制打开至少一个 Accordion Bootstrap 选项卡

javascript - 寄存器 0x​​104567911

Python:正则表达式匹配 C 代码中的多行字符串

angular - 在 Angular 2 类型脚本中,无需导航或路由即可将数据从一个组件传递到另一个组件的可能性有哪些?

angular2 将 ngModel 传递给子组件

javascript - IE11 不在调试器中显示 javascript 文件

javascript - 当文本框处于焦点上时,如何听取向下箭头按下的声音

angular - 架构验证失败,出现以下错误 : Data path ".builders[' app-shell' ]"should have required property ' class'

javascript - 单击弹出框后面的主体时,如何淡出弹出框

swift - 在大型 Swift 代码库中用 ".doOnComplete {}"系统地替换 ".do(onComplete: {})"的最简单方法是什么?