这篇文章主要介绍“Vue中vee-validate插件怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Vue中vee-validate插件怎么使用”文章能帮助大家解决问题。1.安装npm&nb
这篇文章主要介绍“Vue中vee-validate插件怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Vue中vee-validate插件怎么使用”文章能帮助大家解决问题。
npm i vee-validate@4.0.3
import { FORM, Field } from 'vee-validate'
// 创建js文件进行导出export default { // 校验项account account (value) { if (!value) return '不能为空'// 条件判断, return true // 最后全部通过必须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 }}
// validation-schema="mySchema" 配置校验规则// v-slot:导出错误对象<Form :validation-schema="mySchema" v-slot="{ errors }"> <!-- 表单元素 --></Form><script> import schema from '@/utils/vee-validate-schema' setup () { // 表单对象数据 const form = Reactive({ account: null, // 账号 password: null // 密码 }) // 校验规则对象 const mySchema = { account: schema.account, password: schema.password } return { form, mySchema } } </script>
//1. 把input改成 `Field` 组件,默认解析成input//2. `Field` 添加name属性,作用是指定使用schema中哪个校验规则//3. `Field`添加v-model,作用是提供表单数据的双向绑定//4. 发生表单校验错误,显示错误类名`error`,提示红色边框<Field v-model="form.account" name="account" type="text" placeholder="请输入用户名" :class="{ error: errors.account }" // 如果返回错误信息,为true 显示类error /> <!-- <input type="text" placeholder="请输入用户名" /> -->
// 表单绑定的数据const form = reactive({ account: null, // 账号 password: null, // 密码 isAgree: true // 是否选中})// 声明当前表单需要的校验数据规则const curSchema = reactive({ account: schema.account, // 账号 password: schema.password, // 密码 isAgree: schema.isAgree // 是否选中})
Vue具体轻量级框架、简单易学、双向数据绑定、组件化、数据和结构的分离、虚拟DOM、运行速度快等优势,Vue中页面使用的是局部刷新,不用每次跳转页面都要请求所有数据和dom,可以大大提升访问速度和用户体验。
关于“Vue中vee-validate插件怎么使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网精选频道,小编每天都会为大家更新不同的知识点。
--结束END--
本文标题: Vue中vee-validate插件怎么安装使用
本文链接: https://lsjlt.com/news/345824.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0