vue中常用的rules验证方式总结
vue中常用的几种表单rules验证方式
message:报错信息
trigger:触发方式
1)blur :失去焦点时进行验证
2)change :当值发生变化时进行验证
required:指定字段是否为必填项(此栏是否为空)
{ label: "用户姓名", prop: "UserName", type: "input", rules: [ { required: true, message: '请输入考核层级', trigger: 'blur', } ] }
min/max:用于验证字段的最小值或最大值(适用于字符串长度或数字范围)
{ label: "用户姓名", prop: "UserName", type: "input", rules: [{ min: 2, max: 5, message: '字符长度在2到5之间', trigger: 'blur' }] }
type:指定字段的类型,如 string, number, boolean, array, date, email, url等
{ label: "用户姓名", prop: "UserName", type: "input", rules: [{ min: 1, max: 100, type: 'number', message: '请输入1到100之间的数字', trigger: 'change' }] }
pattern:使用正则表达式进行验证
{ label: "用户姓名", prop: "UserName", type: "input", rules: [{ pattern: /^[a-zA-Z0-9]+$/, message: '只能包含字母和数字', trigger: 'blur' } ] }
validator:自定义验证逻辑,提供最大灵活性,可以使用回调函数来处理复杂的验证逻辑
{ label: "用户姓名", prop: "UserName", type: "input", rules: [{ validator: (rule, value, callback) => { if (value === '') { callback(new Error('输入不能为空')); } else if (!/^\d+$/.test(value)) { callback(new Error('请输入数字')); } else { callback(); // 验证通过 } }, trigger: 'change' } ] }
enum:指定枚举值,用于验证输入是否在特定值的集合中
{ label: "用户姓名", prop: "UserName", type: "input", rules: [{ type: 'enum', enum: ['option1', 'option2'], message: '请选择有效选项', trigger: 'change' }] }
len:验证字段的固定长度(适用于字符串或数组)
{ label: "用户姓名", prop: "UserName", type: "input", rules: [{ len: 5, message: '请输入5个字符', trigger: 'blur' }] }
扩展:有一个需求,我需要在监视属性中,增加一个自定义rules规则,规则是判断两个日期是否符合条件,不符合需要返回 ‘日期校验错误’
到此这篇关于vue中常用的rules验证方式总结的文章就介绍到这了,更多相关vue rules验证内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
vue+vue-fullpage实现整屏滚动页面的示例代码(直播平台源码)
这篇文章主要介绍了vue+vue-fullpage实现整屏滚动页面,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2022-06-06Vue3 TypeScript 实现useRequest详情
本文介绍了Vue3 TypeScript实现useRequest详情,useRequest可能是目前社区中最强大,最接地气的请求类 Hooks了。可以覆盖99%的网络请求场景,无论是读还是写,无论是普通请求还是分页请求,无论是缓存还是防抖节流,通通都能支持,关于其介绍需要的小伙伴可以参考一下2022-05-05vue中实现当前时间echarts图表时间轴动态的数据(实例代码)
这篇文章主要介绍了vue中实现当前时间echarts图表时间轴动态的数据,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2022-10-10
最新评论