gaoluyang
6 天以前 044d8f67cc414187c353b620ce8ad014fcfe44f4
src/views/system/user/profile/resetPwd.vue
@@ -41,8 +41,33 @@
        ],
        newPassword: [
          { required: true, message: "新密码不能为空", trigger: "blur" },
          { min: 6, max: 20, message: "长度在 6 到 20 个字符", trigger: "blur" },
          { pattern: /^[^<>"'|\\]+$/, message: "不能包含非法字符:< > \" ' \\\ |", trigger: "blur" }
          { min: 8, max: 20, message: "长度在 8 到 20 个字符", trigger: "blur" },
          { pattern: /^[^<>"'|\\]+$/, message: "不能包含非法字符:< > \" ' \\\\ |", trigger: "blur" },
          {
            validator: (rule, value, callback) => {
              if (!value) {
                callback();
                return;
              }
              // 检查是否包含大写字母
              const hasUpperCase = /[A-Z]/.test(value);
              // 检查是否包含小写字母
              const hasLowerCase = /[a-z]/.test(value);
              // 检查是否包含特殊符号
              const hasSpecialChar = /[!@#$%^&*()_+\-=\[\]{};':\"\\|,.<>\/?]/.test(value);
              if (!hasUpperCase) {
                callback(new Error('新密码必须包含至少一个大写字母'));
              } else if (!hasLowerCase) {
                callback(new Error('新密码必须包含至少一个小写字母'));
              } else if (!hasSpecialChar) {
                callback(new Error('新密码必须包含至少一个特殊符号'));
              } else {
                callback();
              }
            },
            trigger: "blur"
          }
        ],
        confirmPassword: [
          { required: true, message: "确认密码不能为空", trigger: "blur" },