1.main.js
(1).安装vee-validate
  1. npm install vee-validate --save
(2).安装vue-i18n
  1. npm install vue-i18n --save
//验证引入
import VeeValidate, { Validator } from 'vee-validate';
import zh_CN from 'vee-validate/dist/locale/zh_CN';
import messages from './libs/dist/locale/zh_CN.js';
Validator.addLocale(zh_CN);
Validator.updateDictionary({
zh_CN: {
messages
}
});

  

2.html
<div class="layui-tab-item layui-show">
<div class="layui-form-item">
<label class="layui-form-label">项目名称<em class="x">*</em></label>
<div class="layui-input-block">
<input type="text" name="project" autocomplete="off" class="layui-input" v-validate="'required|project|max:50'" placeholder="请输入项目名称">
<span class="errortip" v-show="errors.has('form-1.project')">{{ errors.first('form-1.project')}}</span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">对方账号<em class="x">*</em></label>
<div class="layui-input-block">
<input type="text" value="" name="other_phone" autocomplete="off" class="layui-input cyl_required" v-validate="'required|other_phone'" placeholder="请输入对方账号">
<span class="errortip" v-show="errors.has('form-1.other_phone')">{{ errors.first('form-1.other_phone')}}</span>
</div>
</div>
<input type="hidden" name="other_id" value="123456000" />
<div class="layui-form-item">
<label class="layui-form-label">对方公司*</label>
<div class="layui-input-block">
<input placeholder="请输入对方公司" type="text" name="other_company_name" autocomplete="off" class="layui-input">
<span class="errortip" v-show="errors.has('form-1.other_company_name')">{{ errors.first('form-1.other_company_name')}}</span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">对方联系人姓名<em class="x">*</em></label>
<div class="layui-input-block">
<input value="" placeholder="请输入对方联系人姓名" type="text" name="other_name" autocomplete="off" class="layui-input" v-validate="'required|other_name|max:50'">
<span class="errortip" v-show="errors.has('form-1.other_name')">{{ errors.first('form-1.other_name')}}</span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">金额<em class="x">*</em></label>
<div class="layui-input-block">
<input value="" placeholder="请输入金额" type="text" name="money" autocomplete="off" class="layui-input" v-validate="'required|money|max:13'">
<span class="errortip" v-show="errors.has('form-1.money')">{{ errors.first('form-1.money')}}</span>
</div>
</div>
</div>
3.js
created() {
// 自定义validate
              //设置require提示的name值改为入文字
const dictionary = {
zh_CN: {
messages: {
required: ( field )=> field + "不能为空"
},
attributes:{
project:'项目名称',
other_phone:'对方账号',
other_name: '对方联系人姓名',
money: '金额',
order_type:'订单属性'
}
}
};
Validator.updateDictionary(dictionary);

Validator.extend('phone', {
messages: {
zh_CN: field => field + '必须是11位手机号码',
},
validate: value => {
return value.length == 11 && /^((13|14|15|17|18)[0-9]{1}\d{8})$/.test(value)
}
});
Validator.extend('project', {
messages: {
zh_CN:field => field + '输入格式不正确',
},
validate: (value) => {
return value.length;
}
}),
Validator.extend('other_phone', {
messages: {
zh_CN:field => field + '手机号格式不正确',
},
validate: (value) => {
return value.length == 11 && /^((13|14|15|17|18)[0-9]{1}\d{8})$/.test(value)
}
});
Validator.extend('other_name', {
messages: {
zh_CN:field => field + '输入格式不正确',
},
validate: (value) => {
return value.length;
}
});
Validator.extend('money', {
messages: {
zh_CN:field => field + '输入金额格式不正确',
},
validate: (value) => {
//value.length >= 13 &&
return /^[0-9]+(.[0-9]{2})?$/.test(value)
}
});
},

  

		validateForm(scope) {
  this.$validator.validateAll(scope).then((result) => {
    if (result) {     } else{     }
  });
}

  

vue、iview、VeeValidate 表单验证完整的更多相关文章

  1. vue validate多表单验证思考 之前写过一个里外层,现在觉得不合适,应该平行的写,然后都给ret,最后判断ret 再做出反应,这样整体表单的所有验证就都报验证,然后最后提交的时候把组件内的对象合并到总的对象,再提交

    vue validate多表单验证思考 之前写过一个里外层,现在觉得不合适,应该平行的写,然后都给ret,最后判断ret 再做出反应,这样整体表单的所有验证就都报验证,然后最后提交的时候把组件内的对象 ...

  2. vue+element 动态表单验证

    公司最近的项目有个添加动态表单的需求,总结一下我在表单验证上遇到的一些坑. 如图是功能的需求,这个功能挺好实现的,但是表单验证真是耗费了我一些功夫. vue+element在表单验证上有一些限制,必须 ...

  3. Vue如何使用vee-validate表单验证

    Vue项目遇到要表单验证了吧,对我来说表单验证是个很纠(dan)结(teng)的内容,各种判断凌乱到飞起.往常使用jquery的validate插件做表单验证方便吧,你也可以在Vue里引入jquery ...

  4. vue elementui form表单验证

    最近我们公司将前端框架由easyui 改为 vue+elementui .自学vue两周 就开始了爬坑之路.业余时间给大家分享一下心得,技术新手加上第一次分享(小激动),有什么不足的地方欢迎大家指正, ...

  5. Vue中Form表单验证无法消除验证问题

    iView的表单api给出了一个resetFields方法,用于重置整个表单输入的内容并清除验证提示. 但是有时候需要只消除部分的iview的resetFields方法源码是这样的resetField ...

  6. vue 常用的表单验证,包括手机号码,固定电话和身份证...

    <template> <div> <pl-content-box> <pl-page-nav :show-previous=true></pl-p ...

  7. vee-validate表单验证组件

    vee-validate是VUE的基于模板的验证框架,允许您验证输入并显示错误 安装 npm i vee-validate --save 引入 import Vue from 'vue'; impor ...

  8. vue中的表单验证

    http://www.cnblogs.com/luoxuemei/p/9295506.html /*是否合法IP地址*/ export function validateIP(rule, value, ...

  9. vue element-UI Form表单验证

    摘自官网 https://element.eleme.cn/#/zh-CN/component/form 保证prop的值等于v-model的值,并且初始化值,这样验证才好使. 可以自定义验证 < ...

  10. 使用vee-validate表单验证插件如何设置中文提示

    版本: vee-validate v3.x设置如下: import * as rules from 'vee-validate/dist/rules'; import zh_CN from 'vee- ...

随机推荐

  1. vs2019 内核驱动编译失败:网络共享盘问题

    怀念2008 我以为这个年代了,中文路径问题应该解决了,记得vs 2008写c的时候曾因中文路径的问题导致编译不通过,从2015版本开始发现有时候项目名称和路径里包含中文也可以编译通过了,习惯之后后面 ...

  2. webSocket前端+nodejs后端简单案例多人在线聊天

    一:下面是一个简单的案例,回车发送消息,多人在线聊天 1.前端代码 <!DOCTYPE html> <html> <head> <meta charset=& ...

  3. 关于v-deep有你想知道的一切

    1.首先要知道v-deep的使用场合. 在此之前先了解一下scoped属性,scoped 属性是一个布尔属性.如果使用该属性,则样式仅仅应用到 style 元素的父元素及其子元素. 在vue中引入了s ...

  4. day14-JdbcTemplate-01

    JdbcTemplate-01 看一个实际需求: 如果希望使用spring框架做项目,Spring框架如何处理对数据库的操作呢? 方案一:使用之前的JdbcUtils类 方案二:spring提供了一个 ...

  5. 静态代码块-数组工具类Arrays

    静态代码块 静态代码块: 定义在成员位置,使用static修饰的代码块{}. 位置:类中方法外. 执行:随着类的加载而执行且执行一次,优先于main方法和构造方法的执行 格式: public clas ...

  6. shin-monitor源码分析

    在经过两年多的线上沉淀后,将监控代码重新用 TypeScript 编写,删除冗余逻辑,正式开源. 根据 shin-monitor 的目录结构可知,源码集中在 src 目录中.关于监控系统的迭代过程,可 ...

  7. ASP.NET Core开发者指南(2022版路线图)

    ASP.NET Core开发者指南 2022年 ASP.NET Core 开发者指南: 在下面,您可以看到一个图,说明可以采用的路径以及要成为ASP.NET Core开发人员所想要学习的库.我将此图作 ...

  8. 【TS】联合类型--类型断言--类型推断

    联合类型 在实际开发中,我们接收的变量可能不是一个固定的数据类型,而是动态的多个数据类型,此时用单个固定的数据类型去接收很明显是不行的,为了解决这种可能会接收多个不同数据类型的变量就需要用到联合类型. ...

  9. idea+git+gitee的使用

    idea+git+gitee的使用 下载git并安装 进入官网,选择合适的版本进行下载: 点击进入官网 下载完毕后,安装git 安装idea中的gitee插件 注意:安装好之后重启idea 进入ide ...

  10. 多线程并发(二):聊聊AQS中的共享锁实现原理

    在上一篇文章多线程并发(一)中我们通过acquire()详细地分析了AQS中的独占锁的获取流程,提到独占锁,自然少不了共享锁,所以我们这边文章就以AQS中的acquireShared()方法为例,来分 ...