Parcourir la source

密码强度规则校验

sunlupeng il y a 1 an
Parent
commit
9b1ca3b755
1 fichiers modifiés avec 8 ajouts et 2 suppressions
  1. 8 2
      src/views/password/reset.vue

+ 8 - 2
src/views/password/reset.vue

@@ -50,8 +50,14 @@ import { updatePassword } from "@/api/login";
 export default {
   data() {
     var validatePass = (rule, value, callback) => {
-      if (value === '') {
-        callback(new Error('请输入密码'));
+      //必须包含大小写字母、数字、特殊字符长度再9-16位之间
+      var regex = new RegExp("(?=.*[0-9])(?=.*[a-zA-Z])(?=.*[^a-zA-Z0-9]).{9,30}");
+      if (value === "") {
+          callback(new Error("请输入密码"));
+      } else if (value.length < 9 || value.length > 30) {
+        callback(new Error("请输入9~30位密码"));
+      } else if (!regex.test(value)) {
+        callback(new Error("密码必须同时包含字母、数字和特殊字符其中三项且至少9位"));
       } else {
         if (this.ruleForm.checkPass !== '') {
           this.$refs.ruleForm.validateField('checkPass');