Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验


Posted in Javascript onApril 22, 2019

Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验

vee-validate 是为 Vue.js 量身打造的表单校验框架,允许您校验输入的内容并显示对应的错误提示信息。它内置了很多常见的校验规则,可以组合使用多种校验规则,大部分场景只需要配置就能实现开箱即用,还支持自定义正则表达式。而且支持 40 多种语言,对本地化、多语言支持非常友好。

国内饿了么团队开源项目 Element UI 就用到了 vee-validate 。

vee-validate 官网:https://baianat.github.io/vee-validate/

1. 安装

安装 vee-validate 到项目中

npm install vee-validate --save

2. 创建 vee-validate 插件

a. 创建插件

在 Nuxt.js 项目 plugins 目录下创建 veevalidate.js 。

b. 引入、配置 vee-validate

import Vue from 'vue'
import zhCN from 'vee-validate/dist/locale/zh_CN' // 引入本地化语言
import VeeValidate, { Validator } from 'vee-validate' // 引入 vee-validate
// 覆盖默认错误信息提示
zhCN.messages.email = () => '请输入正确的邮箱地址'
Vue.use(VeeValidate)
// 本地化
Validator.localize('zh_CN', zhCN)

3. 引入 vee-validate 到项目中

在 nuxt.config.js 中引入刚才配置好的插件 veevalidate.js

/*
** Plugins to load before mounting the App
*/
plugins: [
  '@/plugins/veevalidate'
],

4. 表单页实现自定义错误提示、自定义检验规则

HTML 表单

<form action="">
 <van-cell-group>
  <van-field placeholder="请输入有效邮箱" type="email" v-model="email" name="email"
   v-validate="'required|email'" :error-message="errors.first('email')" />
  <van-field placeholder="请输入密码" v-model="password" type="password" name="password"
   v-validate="{ min: 3, max: 16, regex: regexps.password }" :error-message="errors.first('password')">
  </van-field>
 </van-cell-group>
</form>

JS

a. 自定义错误提示信息

// 自定义错误信息提示
const validateDict = {
 custom: {
  email: {
   required: '请输入电子邮箱', // 覆盖 email 字段的 required 规则默认信息提示
   email: '请输入有效的电子邮箱地址' // 覆盖 email 字段的 email 规则默认信息提示
  },
  password: {
   min: '密码长度在7-26个字符', // 覆盖 password 字段的 min 规则默认信息提示
   max: '密码长度在7-26个字符', // 覆盖 password 字段的 max 规则默认信息提示
   regex: '需包含大写字母、小写字母、数字、特殊字符中任意三项' // 覆盖 email 字段的 regex 规则默认信息提示
  }
 }
}

b. Vue 中覆盖默认配置,使用自定义提示信息

data () {
 regexps: {
  password: new RegExp('') // 密码检验自定义正则表达式
 },
},
created() {
 this.$validator.localize('zh_CN', validateDict)
},

5. 效果截图

Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验

总结

以上所述是小编给大家介绍的Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
js获取html参数及向swf传递参数应用介绍
Feb 18 Javascript
JavaScript中的函数的两种定义方式和函数变量赋值
May 12 Javascript
Javascript编程之继承实例汇总
Nov 28 Javascript
JQuery EasyUI的使用
Feb 24 Javascript
js判断iframe中元素是否存在的实现代码
Dec 24 Javascript
js实现背景图自适应窗口大小
Jan 10 Javascript
webpack3里使用uglifyjs压缩js时打包报错的解决
Dec 13 Javascript
vue路由跳转传参数的方法
May 06 Javascript
超详细的5个Shell脚本实例分享(值得收藏)
Aug 15 Javascript
jQuery实现鼠标移入显示蒙版效果
Jan 11 jQuery
D3.js 实现带伸缩时间轴拓扑图的示例代码
Jan 20 Javascript
原生js实现html手机端城市列表索引选择城市
Jun 24 Javascript
vue 项目build错误异常的解决方法
Apr 22 #Javascript
js实现web调用摄像头 js截取视频画面
Apr 21 #Javascript
今天,小程序正式支持 SVG
Apr 20 #Javascript
详解Vue中组件的缓存
Apr 20 #Javascript
Node.js折腾记一:读指定文件夹,输出该文件夹的文件树详解
Apr 20 #Javascript
优雅地使用loading(推荐)
Apr 20 #Javascript
详解JavaScript的数据类型以及数据类型的转换
Apr 20 #Javascript
You might like
利用PHP动态生成VRML网页
2006/10/09 PHP
php中计算未知长度的字符串哪个字符出现的次数最多的代码
2012/08/14 PHP
PHP四大安全策略
2014/03/12 PHP
smarty模板引擎中变量及变量修饰器用法实例
2015/01/22 PHP
PHP获取ip对应地区和使用网络类型的方法
2015/03/11 PHP
JavaScript 对Cookie 操作的封装小结
2009/12/31 Javascript
使用jQuery向asp.net Mvc传递复杂json数据-ModelBinder篇
2010/05/07 Javascript
JS常用算法实现代码
2016/11/14 Javascript
javascript实现将数字转成千分位的方法小结【5种方式】
2016/12/11 Javascript
微信小程序实现美团菜单
2018/06/06 Javascript
改进 JavaScript 和 Rust 的互操作性并深入认识 wasm-bindgen 组件
2019/07/13 Javascript
vue el-tree 默认展开第一个节点的实现代码
2020/05/15 Javascript
[01:10]3.19DOTA2发布会 三代刀塔人第一代
2014/03/25 DOTA
[02:43]DOTA2亚洲邀请赛场馆攻略——带你走进东方体育中心
2018/03/19 DOTA
一个小示例告诉你Python语言的优雅之处
2014/07/04 Python
python with提前退出遇到的坑与解决方案
2018/01/05 Python
解决python3爬虫无法显示中文的问题
2018/04/12 Python
python实现文本进度条 程序进度条 加载进度条 单行刷新功能
2019/07/03 Python
python rsa实现数据加密和解密、签名加密和验签功能
2019/09/18 Python
python sitk.show()与imageJ结合使用常见的问题
2020/04/20 Python
opencv 图像礼帽和图像黑帽的实现
2020/07/07 Python
耐克巴西官方网站:Nike巴西
2016/08/14 全球购物
巴西最大的家电和百货零售商:Casas Bahia
2016/11/22 全球购物
Madda Fella官网:美国冒险家服装品牌
2020/01/16 全球购物
北美最大的参茸药食商城:德成行
2020/12/06 全球购物
求最大连续递增数字串(如"ads3sl456789DF3456ld345AA"中的"456789")
2015/09/11 面试题
应届医学毕业生求职信分享
2013/12/02 职场文书
高中毕业自我鉴定
2013/12/22 职场文书
校园之星获奖感言
2014/01/29 职场文书
俞敏洪励志演讲稿
2014/04/29 职场文书
学习党的群众路线实践活动思想汇报
2014/09/12 职场文书
学校元旦晚会开场白
2014/12/14 职场文书
关于清明节的演讲稿2015
2015/03/18 职场文书
小学教师教学随笔
2015/08/14 职场文书
组织委员竞选稿
2015/11/21 职场文书
乡镇干部学习心得体会
2016/01/23 职场文书