Vue中常用rules校验规则(实例代码)

2020-06-12 20:45:32易采站长站整理


export function isPort(rule, value, callback) {
if (!value) {
return callback(new Error('输入不可以为空'));
}
setTimeout(() => {
if (value == '' || typeof(value) == undefined) {
callback(new Error('请输入端口值'));
} else {
const re = /^([0-9]|[1-9]d|[1-9]d{2}|[1-9]d{3}|[1-5]d{4}|6[0-4]d{3}|65[0-4]d{2}|655[0-2]d|6553[0-5])$/;
const rsCheck = re.test(value);
if (!rsCheck) {
callback(new Error('请输入在[0-65535]之间的端口值'));
} else {
callback();
}
}
}, 100);
}

19、验证端口是否在[0,65535]之间,非必填,isMust表示是否必填


export function isCheckPort(rule, value, callback) {
if (!value) {
callback();
}
setTimeout(() => {
if (value == '' || typeof(value) == undefined) {
//callback(new Error('请输入端口值'));
} else {
const re = /^([0-9]|[1-9]d|[1-9]d{2}|[1-9]d{3}|[1-5]d{4}|6[0-4]d{3}|65[0-4]d{2}|655[0-2]d|6553[0-5])$/;
const rsCheck = re.test(value);
if (!rsCheck) {
callback(new Error('请输入在[0-65535]之间的端口值'));
} else {
callback();
}
}
}, 100);
}

20、小写字母


export function validateLowerCase(val) {
const reg = /^[a-z]+$/;
return reg.test(val);
}

22、两位小数验证


const validateValidity = (rule, value, callback) => {
if (!/(^[1-9]([0-9]+)?(.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9].[0-9]([0-9])?$)/.test(value)) {
callback(new Error('最多两位小数!!!'));
} else {
callback();
}
};

23、是否大写字母


export function validateUpperCase(val) {
const reg = /^[A-Z]+$/;
return reg.test(val);
}

24、是否大小写字母


export function validatAlphabets(val) {
const reg = /^[A-Za-z]+$/;
return reg.test(val);
}

25、密码校验


export const validatePsdReg = (rule, value, callback) => {
if (!value) {
return callback(new Error('请输入密码'))
}
if (!/^(?![d]+$)(?![a-zA-Z]+$)(?![^da-zA-Z]+$)([^u4e00-u9fa5s]){6,20}$/.test(value)) {
callback(new Error('请输入6-20位英文字母、数字或者符号(除空格),且字母、数字和标点符号至少包含两种'))
} else {
callback()
}
}

26、中文校验


export const validateContacts = (rule, value, callback) => {
if (!value) {
return callback(new Error('请输入中文'))