diff --git a/src/utils/global.js b/src/utils/global.js
index c01d56bb..e93ad963 100644
--- a/src/utils/global.js
+++ b/src/utils/global.js
@@ -9,3 +9,7 @@ export default
export const REGION = {
YI_LONG_XIAN: '仪陇',
}
+
+export const REGEXP = {
+ PASSWORD: /^(?=.*\d)(?=.*[a-zA-Z])(?=.*[~!@#$%^&*])[\da-zA-Z~!@#$%^&*]{8,}$/,
+};
diff --git a/src/views/sunVillage_info/passWord.vue b/src/views/sunVillage_info/passWord.vue
index a8ce0f94..bb9e30df 100644
--- a/src/views/sunVillage_info/passWord.vue
+++ b/src/views/sunVillage_info/passWord.vue
@@ -5,14 +5,14 @@
保存
-
+
-
+
-
+
-
+
@@ -27,11 +27,21 @@
@@ -176,7 +197,7 @@
left: 0PX;
}
/deep/ .van-field__error-message{
- display: none;
+ /*display: none;*/
}
}
diff --git a/src/views/yinnong/password.vue b/src/views/yinnong/password.vue
index bf9875d6..289c2b56 100644
--- a/src/views/yinnong/password.vue
+++ b/src/views/yinnong/password.vue
@@ -6,7 +6,7 @@
@click-left="$router.back(-1)"
/>
-
+
原密码
-
+
新密码
-
+
import onlineHomeIndex from "../onlineHomeIndex";
import {updateUserPwd} from "../../api/onlineHome/my";
+ import {REGEXP} from "@/utils/global";
+ import {Notify} from "vant";
export default {
components: {
@@ -62,10 +64,15 @@
newPassword: undefined,
confirmPassword: undefined
},
+ validate: {
+ newPassword: '',
+ },
};
},
methods: {
submit() {
+ if(!this.validate_newPassword())
+ return;
console.log(this.user)
if(this.user.confirmPassword
!=this.user.newPassword){
@@ -73,14 +80,19 @@
icon: 'error', // 找到自己需要的图标
message: '两次密码不同,请重新输入',
duration:"1000",
- onClose:function(){
- this.user.oldPassword=""
- this.user.newPassword=""
- this.user.confirmPassword=""
+ onClose:() => {
+ if(0)
+ {
+ this.user.oldPassword=""
+ this.user.newPassword=""
+ this.user.confirmPassword=""
+ }
return false;
}
})
}else{
+ if(!this.validatePassword(this.user.newPassword))
+ return;
updateUserPwd(this.user.oldPassword, this.user.newPassword).then(
response => {
let _this =this
@@ -95,7 +107,43 @@
}
);
}
-
+ },
+ validatePassword(what) {
+ if(!(REGEXP.PASSWORD.test(what)))
+ {
+ Notify.clear();
+ Notify({ type: 'danger', message: '密码至少8个字符,必须包括字母、数字、特殊符号!' });
+ return false;
+ }
+ return true;
+ },
+ validate_newPassword() {
+ let password = this.user.newPassword;
+ if(!password)
+ {
+ this.validate.newPassword = '';
+ return false;
+ }
+ if(password.length < 8)
+ {
+ this.validate.newPassword = '密码长度至少8位';
+ return false;
+ }
+ if(password.length > 20)
+ {
+ this.validate.newPassword = '密码长度不能超过20位';
+ return false;
+ }
+ if(!(REGEXP.PASSWORD.test(password)))
+ {
+ this.validate.newPassword = '密码必须包括字母、数字、特殊符号!';
+ return false;
+ }
+ this.validate.newPassword = '';
+ return true;
+ },
+ clearError() {
+ this.validate.newPassword = '';
},
}
}