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) ]
我写的验证信息required是正常显示 “需要填写用户名”
但是一到 输入最小字节不能超过二的时候,我自己写的信息编程Undefined了,相当迷惑
后来博主吧minLength 换成了 min 发现是可以正常得到我写的报错字符串
然后就陷入沉思, 我就把minLength 换成了 都是小写的 minlength, 最后成功
下面是成功的代码
validationMessages = {
name: {
required: '需要填写用户名',
minlength: '用户名不能少于2个字节',
maxlength: '用户不能多余10字节',
forbidddenname: '不能起低素质的名字'
},
pwd: {
required: '需要填写密码'
}
};
这也算是一个小坑了吧, 因为我每次写变量名 很习惯的就用驼峰命名了 。 以后我会注意
也希望看到这篇的大家不要再掉入坑里了(改了我一个多小时才好)