diff --git a/src/views/system/user.vue b/src/views/system/user.vue
index 0c061c3..de82708 100644
--- a/src/views/system/user.vue
+++ b/src/views/system/user.vue
@@ -92,8 +92,11 @@ import func from "@/util/func";
export default {
data() {
const validatePass = (rule, value, callback) => {
+ let reg = /^(?=.*\d)(?=.*?[a-z])(?=.*?[A-Z])(?=.*[~!@#$%^&*])[\da-zA-Z~!@#$%^&*]{6,18}$/;
if (value === '') {
callback(new Error('请输入密码'));
+ } else if (!reg.test(value)) {
+ callback(new Error('必须包含6-18位数字、大小写字母、特殊字符,不包含下划线'));
} else {
callback();
}
diff --git a/src/views/system/userinfo.vue b/src/views/system/userinfo.vue
index 1d9ef54..a08a021 100644
--- a/src/views/system/userinfo.vue
+++ b/src/views/system/userinfo.vue
@@ -5,7 +5,8 @@
-
+
@@ -21,10 +22,20 @@ import func from "@/util/func";
export default {
data() {
+ var validatePass = (rule, value, callback) => {
+ let reg = /^(?=.*\d)(?=.*?[a-z])(?=.*?[A-Z])(?=.*[~!@#$%^&*])[\da-zA-Z~!@#$%^&*]{6,18}$/;
+ if (value === '') {
+ callback(new Error('请输入新密码'));
+ } else if (!reg.test(value)) {
+ callback(new Error('必须包含6-18位数字、大小写字母、特殊字符,不包含下划线'));
+ } else {
+ callback();
+ }
+ };
var validatePass2 = (rule, value, callback) => {
if (value === '') {
callback(new Error('请再次输入密码'));
- } else if (value !== this.pwdform.newPassword1) {
+ } else if (value !== this.pwdform.newPassword) {
callback(new Error('两次输入密码不一致!'));
} else {
callback();
@@ -65,14 +76,18 @@ export default {
required: true,
message: "请输入新密码",
trigger: "blur"
- }]
+ }, { validator: validatePass, trigger: 'blur' }]
}, {
label: '确认密码',
span: 12,
row: true,
type: 'password',
prop: 'newPassword1',
- rules: [{ validator: validatePass2, trigger: 'blur' }]
+ rules: [{
+ required: true,
+ message: "请输入确认密码",
+ trigger: "blur"
+ }, { validator: validatePass2, trigger: 'blur' }]
}]
},
form: {},
@@ -137,7 +152,7 @@ export default {
}
},
handleTabClick(tabs) {
- if(tabs.prop != '1'){
+ if (tabs.prop != '1') {
this.$refs.pwdForm.resetForm();
}
this.index = func.toInt(tabs.prop);