1、首先安装vee-validate(指定版本),安装命令如下:
npm i vee-validate@4.0.3
2、在app.vue中写入如下内容:用vee-validate提供的Form组件代替form标签,用Field组件代替input标签,errors是接收校验的错误信息放在v-slot中,errors的键其实就是form中的键,值就是TRUE和FALSE
这里边有个特别需要注意的是重置按钮点击后在formCom.value.resetForm()之前要先清空form表单,否则感觉resetForm()无效
3、新建一个叫validate-schema.js作为表单验证,其内容如下:
// 定义校验规则提供给vee-validate组件使用
export default {// 校验accountaccount (value) {// value是将来使用该规则的表单元素的值// 1. 必填// 2. 6-20个字符,需要以字母开头// 如何反馈校验成功还是失败,返回true才是成功,其他情况失败,返回失败原因。if (!value) return '请输入用户名'if (!/^[a-zA-Z]\w{5,19}$/.test(value)) return '字母开头且6-20个字符'return true},password (value) {if (!value) return '请输入密码'if (!/^\w{6,24}$/.test(value)) return '密码是6-24个字符'return true},mobile (value) {if (!value) return '请输入手机号'if (!/^1[3-9]\d{9}$/.test(value)) return '手机号格式错误'return true},code (value) {if (!value) return '请输入验证码'if (!/^\d{6}$/.test(value)) return '验证码是6个数字'return true},isAgree (value) {if (!value) return '请勾选同意用户协议'return true}
}
4、效果如下:
