Angular小坑(一)响应式表单validator中minlength匹配undefined问题

Angular小坑(一)响应式表单validator中minlength匹配undefined问题

首先,我当时出现这个问题的时候真的懵懵的找了挺久才找到的问题,在这里和大家分享一下

  • 首先先说一下我遇到的问题

  • 下面是之前错误的代码

     validationMessages = {
        name: {
          required: '需要填写用户名',
          minLength: '用户名不能少于2个字节',
          maxLength: '用户不能多余10字节',
          forbidddenname: '不能起低素质的名字'
        }
     }
    this.loginForm = this.fb.group({
          name: ['', [
            Validators.required,
            Validators.minLength(2),
            Validators.maxLength(10),
            forbiddenNameValidator(/shabi/i)
          ]
    

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xeR3LWeh-1591511788456)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200607142752308.png)]

我写的验证信息required是正常显示 “需要填写用户名”

但是一到 输入最小字节不能超过二的时候,我自己写的信息编程Undefined了,相当迷惑

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Jia0INGp-1591511788463)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200607143037541.png)]

后来博主吧minLength 换成了 min 发现是可以正常得到我写的报错字符串

然后就陷入沉思, 我就把minLength 换成了 都是小写的 minlength, 最后成功

下面是成功的代码

 validationMessages = {
    name: {
      required: '需要填写用户名',
      minlength: '用户名不能少于2个字节',
      maxlength: '用户不能多余10字节',
      forbidddenname: '不能起低素质的名字'
    },
    pwd: {
      required: '需要填写密码'
    }
  };

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UpZXq7re-1591511788467)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200607143446733.png)]

这也算是一个小坑了吧, 因为我每次写变量名 很习惯的就用驼峰命名了 。 以后我会注意
也希望看到这篇的大家不要再掉入坑里了(改了我一个多小时才好)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值