日常校验的规则
//1.手机号的验证
phone: [
{
required: true,
message: "请输入手机号码",
trigger: "blur"
},
{
validator: function(rule, value, callback) {
if (/^1[34578]\d{9}$/.test(value) == false) {
callback(new Error("请输入正确的手机号码"));
} else {
callback();
}
},
trigger: "blur"
}
],
手机号不必填的验证
proprietorPhone: [
{ required: false, trigger: 'blur', validator: (r, v, b) => { (v && !(/^(?:(?:\+|00)86)?1\d{10}$/.test(v))) ? b('手机号格式不正确') : b() } }
]
邮箱的验证
email: [
{
required: true,
message: "请输入邮箱",
trigger: "blur"
},
{
validator: function(rule, value, callback) {
if (
/^\w{1,64}@[a-z0-9\-]{1,256}(\.[a-z]{2,6}){1,2}$/i.test(
value
) == false
) {
callback(new Error("请输入正确的邮箱格式"));
} else {
callback();
}
},
trigger: "blur"
}
],
服务地址的验证,例如主机ip
ip: [
{
required: true, validator: (rule, value, callback) => {
if (!value) {
callback(new Error('请输入服务地址'))
} else {
if (!(/^((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})(\.((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})){3}$/.test(value))) {
callback(new Error('请输入正确的服务地址'))
} else {
callback()
}
}
},
trigger: 'blur'
}
],
服务的端口验证,例如项目的端口号
port: [
{
required: true,
validator: (rule, value, callback) => {
if (!value) {
callback(new Error('请输入服务端口'))
} else {
if (!(/^\+?[1-9][0-9]*$/.test(value))) {
callback(new Error('只能输入整数'))
} else {
callback()
}
}
},
trigger: 'blur'
}
],
只能输入小数或者整数的验证
defaultmin: [
{
required: true, validator: (rule, value, callback) => {
if (!value) {
callback(new Error('请输入最小值'))
} else {
if (!(/^[0-9]+([.]{1}[0-9]+){0,1}$/.test(value))) {
callback(new Error('只能输入整数或者小数'))
} else {
callback()
}
}
},
trigger: 'blur'
}
],
密码的校验规则,不能输入非法字符并且密码为6-12位,必须包含数字、字母和特殊字符
data(){
let validPassword = (rule, value, callback) => {
let reg = /^[@#\$%\^&\*\s\u4e00-\u9fa5a-z0-9_-]{0,}$/ //验证非法字符
let passreg = /^(?=.*[A-Za-z])(?=.*\d)(?=.*[$@$!%*#_?&])[A-Za-z\d$@$!%*#_?&]{6,12}$/ //验证密码输入的控制范围
if(reg.test(value)) {
if(passreg.test(value)){
callback()
}else {
callback(new Error('密码为6-12位,必须包含数字、字母和特殊字符!'))
}
}else {
callback(new Error('无法输入非法字符!'))
}
};
return {
newPw: [ //密码校验
{ required: true, message: '请输入确认密码', trigger: 'blur' },
{ validator: validPassword, trigger: 'blur' }
],
}
}
常用的一些正则表达式验证
正则表达式 https://c.runoob.com/front-end/854/