Vue vee-validate插件的简单使用


Posted in Vue.js onJune 22, 2021
目录
  • 1.安装
  • 2.导入
  • 3.定义校验规则(最好是在utils文件夹中单独封装js文件导出)
  • 4.使用Form组件配置校验规则和错误对象 (form 和 Field都是从插件中按需导出)
  • 5.使用 Field 组件,添加表单项目校验
  • 6.补充表单数据和验证规则数据

 

1.安装

npm i vee-validate@4.0.3

 

2.导入

import { Form, Field } from 'vee-validate'

 

3.定义校验规则(最好是在utils文件夹中单独封装js文件导出)

// 创建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
  }
}

 

4.使用Form组件配置校验规则和错误对象 (form 和 Field都是从插件中按需导出)

// 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>

 

5.使用 Field 组件,添加表单项目校验

//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="请输入用户名" /> -->

 

6.补充表单数据和验证规则数据

// 表单绑定的数据
const form = reactive({
  account: null, // 账号
  password: null, // 密码
  isAgree: true // 是否选中
})

// 声明当前表单需要的校验数据规则
const curSchema = reactive({
  account: schema.account, // 账号
  password: schema.password, // 密码
  isAgree: schema.isAgree // 是否选中
})

以上就是Vue vee-validate插件的简单使用的详细内容,更多关于Vue vee-validate插件的资料请关注三水点靠木其它相关文章!

Vue.js 相关文章推荐
vue+element_ui上传文件,并传递额外参数操作
Dec 05 Vue.js
Vue实现手机号、验证码登录(60s禁用倒计时)
Dec 19 Vue.js
vue使用require.context实现动态注册路由
Dec 25 Vue.js
vue3弹出层V3Popup实例详解
Jan 04 Vue.js
基于vuex实现购物车功能
Jan 10 Vue.js
Vue实现图书管理案例
Jan 20 Vue.js
Vue常用API、高级API的相关总结
Feb 02 Vue.js
vue3.0 自适应不同分辨率电脑的操作
Feb 06 Vue.js
vue中利用mqtt服务端实现即时通讯的步骤记录
Jul 01 Vue.js
vue中 this.$set的使用详解
Nov 17 Vue.js
vue el-table实现递归嵌套的示例代码
Aug 14 Vue.js
el-table-column 内容不自动换行的解决方法
Aug 14 Vue.js
vue3使用vue-router的完整步骤记录
一篇文章学会Vue中间件管道
Jun 20 #Vue.js
Vue过滤器(filter)实现及应用场景详解
使用Vue3+Vant组件实现App搜索历史记录功能(示例代码)
解决Vue+SpringBoot+Shiro跨域问题
Jun 09 #Vue.js
Vue中插槽slot的使用方法与应用场景详析
vue+elementui 实现新增和修改共用一个弹框的完整代码
You might like
如何突破PHP程序员的技术瓶颈分析
2011/07/17 PHP
自己写的兼容低于PHP 5.5版本的array_column()函数
2014/10/24 PHP
php实现微信公众号主动推送消息
2015/12/31 PHP
PHP记录页面停留时间的方法
2016/03/30 PHP
javascript动画对象支持加速、减速、缓入、缓出的实现代码
2012/09/30 Javascript
js中top/parent/frame概述及案例应用
2013/02/06 Javascript
通过复制Table生成word和excel的javascript代码
2014/01/20 Javascript
单击某一段文字改写文本颜色
2014/06/06 Javascript
jQuery实现滚动切换的tab选项卡效果代码
2015/08/26 Javascript
ionic js 复选框 与普通的 HTML 复选框到底有没区别
2016/06/06 Javascript
js 实现数值的千分位及保存小数方法(推荐)
2016/08/01 Javascript
原生JS版和jquery版实现checkbox的全选/全不选/点选/行内点选(Mr.Think)
2016/10/29 Javascript
微信小程序 picker-view 组件详解及简单实例
2017/01/10 Javascript
如何使用Bootstrap 按钮实例详解
2017/03/29 Javascript
JS实现简单的选择题测评系统代码思路详解(demo)
2017/09/03 Javascript
vue调用语音播放的方法
2019/09/27 Javascript
vue 手机物理监听键+退出提示代码
2020/09/09 Javascript
[00:17]游戏风云独家报道:DD赛后说出数字秘密 吓死你们啊!
2014/07/13 DOTA
[07:01]DOTA2-DPC中国联赛正赛 Aster vs Magma 3月5日 赛后选手采访
2021/03/11 DOTA
python与C互相调用的方法详解
2017/07/14 Python
基于python实现百度翻译功能
2019/05/09 Python
关于python中密码加盐的学习体会小结
2019/07/15 Python
python FTP批量下载/删除/上传实例
2019/12/22 Python
python中uuid模块实例浅析
2020/12/29 Python
装上这 14 个插件后,PyCharm 真的是无敌的存在
2021/01/11 Python
英国时尚高尔夫服装购物网站:Trendy Golf
2020/01/10 全球购物
信息管理专业学生自荐信格式
2013/09/22 职场文书
饭店工作计划书
2014/01/10 职场文书
电大毕业自我鉴定
2014/02/03 职场文书
销售2014年度工作总结
2014/12/08 职场文书
大学升旗仪式主持词
2015/07/04 职场文书
电工实训心得体会
2016/01/14 职场文书
高中物理教学反思
2016/02/19 职场文书
离婚协议书范文2016
2016/03/18 职场文书
Navicat for MySQL的使用教程详解
2021/05/27 MySQL
Anaconda安装pytorch及配置PyCharm 2021环境
2021/06/04 Python