import getPasswordRule from "@/assets/js/tools/getPasswordRule";
|
|
export default {
|
/**
|
* 用户名校验
|
* @param rule
|
* @param value 校验值
|
* @param callback 回调函数
|
* @returns {*}
|
*/
|
userName(rule, value, callback) {
|
if (!value) {
|
return callback(new Error('用户名不能为空'));
|
}
|
|
let pattern = /^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$/;
|
if(!pattern.test(value)) {
|
return callback(new Error('只含有汉字、数字、字母、下划线不能以下划线开头和结尾'));
|
}
|
return callback();
|
},
|
pwd(rule, value, callback) {
|
if (!value) {
|
return callback(new Error('密码不能为空'));
|
}
|
|
// 根据密码类型和长度动态生成校验规则
|
let type = sessionStorage.getItem("passwordType");
|
let num = sessionStorage.getItem("passwordNum");
|
type = type?Number(type):5;
|
num = num?Number(num):8;
|
let passwordRule = getPasswordRule(type, num);
|
|
let pattern = passwordRule.pattern;
|
if(!pattern.test(value)) {
|
return callback(new Error(passwordRule.msg));
|
}
|
return callback();
|
}
|
}
|