Pārlūkot izejas kodu

:art: 密码必须10位且包含字母与数字

Ritchie 1 gadu atpakaļ
vecāks
revīzija
237443b164

+ 6 - 4
src/assets/language/en.json

@@ -1279,8 +1279,9 @@
   "changePassword": {
     "changePassword": "Change Password",
     "passwordLabel": "Login password",
-    "passwordPlaceholder": "Please enter a password with more than 6 digits",
-    "passwordRequired": "Please enter a password with more than 6 digits",
+    "passwordPlaceholder": "Please enter a password with more than 10 digits",
+    "passwordRequired": "Please enter a password with more than 10 digits",
+    "passwordPattern": "Password must contain letters and numbers",
     "passwordCheckLabel": "Confirm Password",
     "passwordCheckPlaceholder": "Please enter the password again to confirm",
     "passwordCheckRequired": "Please enter the password again to confirm",
@@ -1331,8 +1332,9 @@
     "namePlaceholder": "Please enter the user name",
     "nameRequired": "Please enter the user name",
     "passwordLabel": "Login password",
-    "passwordPlaceholder": "Please enter a password with more than 6 digits",
-    "passwordRequired": "Please enter a password with more than 6 digits",
+    "passwordPlaceholder": "Please enter a password with more than 10 digits",
+    "passwordRequired": "Please enter a password with more than 10 digits",
+    "passwordPattern": "Password must contain letters and numbers",
     "passwordCheckLabel": "Confirm Password",
     "passwordCheckPlaceholder": "Please enter the password again to confirm",
     "passwordCheckRequired": "Please enter the password again to confirm",

+ 6 - 4
src/assets/language/ja.json

@@ -1293,8 +1293,9 @@
     "changePassword": {
         "changePassword": "パスワードの変更",
         "passwordLabel": "ログインパスワード",
-        "passwordPlaceholder": "6桁以上のパスワードを入力してください",
-        "passwordRequired": "6桁以上のパスワードを入力してください",
+        "passwordPlaceholder": "10桁以上のパスワードを入力してください",
+        "passwordRequired": "10桁以上のパスワードを入力してください",
+        "passwordPattern": "パスワードには英字と数字を含める必要があります",
         "passwordCheckLabel": "パスワードの確認",
         "passwordCheckPlaceholder": "確認のためもう一度パスワードを入力してください",
         "passwordCheckRequired": "確認のためもう一度パスワードを入力してください",
@@ -1345,8 +1346,9 @@
         "namePlaceholder": "ユーザー名を入力してください",
         "nameRequired": "ユーザー名を入力してください",
         "passwordLabel": "ログインパスワード",
-        "passwordPlaceholder": "6桁以上のパスワードを入力してください",
-        "passwordRequired": "6桁以上のパスワードを入力してください",
+        "passwordPlaceholder": "10桁以上のパスワードを入力してください",
+        "passwordRequired": "10桁以上のパスワードを入力してください",
+        "passwordPattern": "パスワードには英字と数字を含める必要があります",
         "passwordCheckLabel": "パスワード確認",
         "passwordCheckPlaceholder": "確認のためパスワードを再入力してください",
         "passwordCheckRequired": "確認のためパスワードを再入力してください",

+ 6 - 4
src/assets/language/zh.json

@@ -1323,8 +1323,9 @@
   "changePassword": {
     "changePassword": "修改密码",
     "passwordLabel": "登录密码",
-    "passwordPlaceholder": "请输入6位数以上密码",
-    "passwordRequired": "请输入6位数以上密码",
+    "passwordPlaceholder": "请输入10位数以上密码",
+    "passwordRequired": "请输入10位数以上密码",
+    "passwordPattern": "密码必须包含字母与数字",
     "passwordCheckLabel": "确认密码",
     "passwordCheckPlaceholder": "请再次输入密码进行确认",
     "passwordCheckRequired": "请再次输入密码进行确认",
@@ -1375,8 +1376,9 @@
     "namePlaceholder": "请输入用户姓名",
     "nameRequired": "请输入用户姓名",
     "passwordLabel": "登录密码",
-    "passwordPlaceholder": "请输入6位数以上密码",
-    "passwordRequired": "请输入6位数以上密码",
+    "passwordPlaceholder": "请输入10位以上密码",
+    "passwordRequired": "请输入密码",
+    "passwordPattern": "密码必须包含字母与数字",
     "passwordCheckLabel": "确认密码",
     "passwordCheckPlaceholder": "请再次输入密码进行确认",
     "passwordCheckRequired": "请再次输入密码进行确认",

+ 4 - 1
src/views/changePassword.vue

@@ -6,7 +6,10 @@
       <van-form @submit="changePasswordSubmit">
         <van-field v-model="password" name="password" type="password" :label="$t('changePassword.passwordLabel')"
           :placeholder="$t('changePassword.passwordPlaceholder')"
-          :rules="[{ required: true, message: $t('changePassword.passwordRequired') }]" />
+          :rules="[
+            { required: true, message: $t('changePassword.passwordRequired') },
+            { pattern: /^(?=.*[a-zA-Z])(?=.*\d).{10,}$/, message: $t('register.passwordPattern') }
+          ]" />
         <br>
         <van-field v-model="passwordCheck" name="passwordCheck" type="password"
           :label="$t('changePassword.passwordCheckLabel')" :placeholder="$t('changePassword.passwordCheckPlaceholder')"

+ 27 - 18
src/views/register.vue

@@ -12,13 +12,22 @@
           :placeholder="$t('register.namePlaceholder')"
           :rules="[{ required: true, message: $t('register.nameRequired') }]" />
         <br>
-        <van-field v-model="password" name="password" type="password" :label="$t('register.passwordLabel')"
-          :placeholder="$t('register.passwordPlaceholder')"
-          :rules="[{ required: true, message: $t('register.passwordRequired') }]" />
+        <!-- 密码 -->
+        <van-field v-model="password" name="password" type="password" 
+          :label="$t('register.passwordLabel')"
+          :placeholder="$t('register.passwordPlaceholder')" 
+          :rules="[
+            { required: true, message: $t('register.passwordRequired') },
+            { pattern: /^(?=.*[a-zA-Z])(?=.*\d).{10,}$/, message: $t('register.passwordPattern') }
+          ]" />
         <br>
-        <van-field v-model="passwordCheck" name="passwordCheck" type="password" :label="$t('register.passwordCheckLabel')"
-          :placeholder="$t('register.passwordCheckPlaceholder')"
-          :rules="[{ required: true, message: $t('register.passwordCheckRequired') }]" />
+        <!-- 确认密码 -->
+        <van-field v-model="passwordCheck" name="passwordCheck" type="password"
+          :label="$t('register.passwordCheckLabel')" 
+          :placeholder="$t('register.passwordCheckPlaceholder')" 
+          :rules="[
+            { required: true, message: $t('register.passwordCheckRequired') },
+          ]" />
         <br>
         <!-- 国家或地区 -->
         <div class="van-cell van-field">
@@ -42,8 +51,8 @@
             </div>
           </div>
           <!-- 国内手机 -->
-          <van-field v-if="logonMode === '10'" v-model="phone" name="phone" type="tel" :label="$t('register.phoneLabel')"
-            :placeholder="$t('register.phonePlaceholder')"
+          <van-field v-if="logonMode === '10'" v-model="phone" name="phone" type="tel"
+            :label="$t('register.phoneLabel')" :placeholder="$t('register.phonePlaceholder')"
             :rules="[{ required: ifForeign === '0' && logonMode === '10', pattern: /^1[3456789]\d{9}$/, message: $t('register.phoneRequired') }]" />
           <br v-if="ifForeign === '0' && logonMode === '10'">
           <!-- 短信验证码 -->
@@ -51,10 +60,10 @@
             :placeholder="$t('register.codePlaceholder')"
             :rules="[{ required: true, message: $t('register.codeRequired') }]">
             <template #button v-if="ifForeign === '0' && logonMode === '10'">
-              <van-button size="small" type="primary" @click="seedVerCode()" :disabled="time !== 0 || phone.length === 0"
-                :loading=reqApi :loading-text="$t('register.sending')">{{
+              <van-button size="small" type="primary" @click="seedVerCode()"
+                :disabled="time !== 0 || phone.length === 0" :loading=reqApi :loading-text="$t('register.sending')">{{
                   time === 0 ?
-                  $t('register.seedVerCode') : time + $t('register.replaysInSeconds')
+                    $t('register.seedVerCode') : time + $t('register.replaysInSeconds')
                 }}
               </van-button>
             </template>
@@ -72,10 +81,10 @@
             :placeholder="$t('register.emailCodePlaceholder')"
             :rules="[{ required: true, message: $t('register.emailCodeRequired') }]">
             <template #button v-if="ifForeign === '0' && logonMode === '11'">
-              <van-button size="small" type="primary" @click="seedVerCode()" :disabled="time !== 0 || email.length === 0"
-                :loading=reqApi :loading-text="$t('register.sending')">{{
+              <van-button size="small" type="primary" @click="seedVerCode()"
+                :disabled="time !== 0 || email.length === 0" :loading=reqApi :loading-text="$t('register.sending')">{{
                   time === 0 ?
-                  $t('register.seedVerCode') : time + $t('register.replaysInSeconds')
+                    $t('register.seedVerCode') : time + $t('register.replaysInSeconds')
                 }}
               </van-button>
             </template>
@@ -93,10 +102,10 @@
             :placeholder="$t('register.emailCodePlaceholder')"
             :rules="[{ required: true, message: $t('register.emailCodeRequired') }]">
             <template #button v-if="ifForeign === '1'">
-              <van-button size="small" type="primary" @click="seedVerCode()" :disabled="time !== 0 || email.length === 0"
-                :loading=reqApi :loading-text="$t('register.sending')">{{
+              <van-button size="small" type="primary" @click="seedVerCode()"
+                :disabled="time !== 0 || email.length === 0" :loading=reqApi :loading-text="$t('register.sending')">{{
                   time === 0 ?
-                  $t('register.seedVerCode') : time + $t('register.replaysInSeconds')
+                    $t('register.seedVerCode') : time + $t('register.replaysInSeconds')
                 }}
               </van-button>
             </template>
@@ -190,7 +199,7 @@ export default {
       } else {
         phoneOrEmailStr = email.value;
       }
-      
+
       getCurrentDomain();
 
       try {