目标:用户名长度3-10字符;首字母开头;只能包含字母、数字和下划线。
const validateNameLength = (rule, value, callback) => {
const str = value.trim();
const length = str.length;
const reStr = /^[a-zA-Z]{1}/;
const reEn = /^[a-zA-Z0-9\_)]{3,10}$/;
if (!reStr.test(value)) {
callback(new Error("用户名必须以字母开头"));
} else if (length < 3 || length > 10) {
callback(new Error("用户名的长度是3到10个字符"));
} else if (!reEn.test(value)) {
callback(new Error("用户名只能包含字母、数字和下划线"));
} else {
callback();
}
this.formData.username = str;
};