在前端开发时用到async-validator插件时,莫名其妙报async-validator:’’ is not a string
而且校验也会失效。

造成原因:

1.在方法校验的时候,会有一部分非String类型表单项提示校验未通过
2.尤其是async-validator在无法验证数字格式的表单值得时候,只需要在规则中声明一下类型即可,因为你不加的话,他默认是string

解决方案:

一、去掉:rules 规则中的 trigger 属性

namerules:[{ required: (item.required), message: '请填写' + item.label}]

二、在校验规则里限定type,如果是验证数字格式的,就设为type: 'number’

  group:[{ required: true, type: 'number', message: '请选择分组', trigger: 'change' }]

我在开发中就遇到是数字类型的校验情况,加了type: 'number’就解决了这个问题,不过这问题有点匪夷所思还是找了很久解决方案,特此分享给大家尝试~

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐