Преглед изворни кода

:bug: 注册时验证码问题,登录时手机号问题

Ritchie пре 1 година
родитељ
комит
c47f4ce843
2 измењених фајлова са 17 додато и 9 уклоњено
  1. 15 7
      src/views/login/LoginIndex.vue
  2. 2 2
      src/views/login/Register.vue

+ 15 - 7
src/views/login/LoginIndex.vue

@@ -11,8 +11,10 @@
     </div>
     <div class="loginFormBox">
       <van-form @submit="onSubmit">
-        <van-field v-model="userPhone" name="userPhone" label="" placeholder="请输入手机号"
-          :rules="[{ required: true, message: '请输入手机号' }]" />
+        <van-field v-model="userPhone" name="userPhone" label="" placeholder="请输入手机号" :rules="[
+          { required: true, message: '请输入手机号' },
+          { validator: validatePhone, message: '请输入有效的手机号' }
+        ]" />
         <van-field v-model="userPwd" type="password" name="userPwd" label="" :placeholder="$t('login.passWordInput')"
           :rules="[{ required: true, message: $t('login.passWordInput') }]" />
         <div class="checkedPasswordBox">
@@ -22,8 +24,8 @@
           </van-checkbox>
           <!-- 忘记密码 -->
           <span class="forgetPassWord" @click="forgetPassword">{{
-      $t("login.forgetPassWord")
-    }}</span>
+            $t("login.forgetPassWord")
+          }}</span>
         </div>
         <br>
         <br>
@@ -34,8 +36,8 @@
           </van-button>
           <!-- 登录 -->
           <van-button round type="primary" native-type="submit">{{
-      $t("login.loginButton")
-            }}
+            $t("login.loginButton")
+          }}
           </van-button>
         </div>
       </van-form>
@@ -91,6 +93,11 @@ export default {
     //   }
     // };
 
+    function validatePhone(value) {
+      const phoneRegex = /^1[3-9]\d{9}$/;
+      return phoneRegex.test(value);
+    }
+
     const showPopover = ref(false);
 
     // 登录
@@ -100,7 +107,7 @@ export default {
         password: md5(values.userPwd),
       }
       const { data } = await login(loginParam);
-      
+
       console.log("记住密码?", checked.value);
       console.log("data.code", data.code);
       if (data.code === "00000") {
@@ -157,6 +164,7 @@ export default {
       isInWeChat,
       state,
       showPopover,
+      validatePhone
     };
   },
   components: {

+ 2 - 2
src/views/login/Register.vue

@@ -4,8 +4,8 @@
     <s-header :name="$t('register.header')" :noback="false"></s-header>
     <div class="registerFormBox">
       <van-form @submit="registerSubmit">
-        <!-- 账号昵称 -->
-        <van-field v-model="userName" name="userName" label="账号昵称" :placeholder="$t('register.usernamePlaceholder')"
+        <!-- 姓名昵称 -->
+        <van-field v-model="userName" name="userName" label="姓名昵称" :placeholder="$t('register.usernamePlaceholder')"
           :rules="[{ pattern: /^[a-zA-Z0-9]+$/, message: $t('register.usernameRequired') }]" />
         <br>
         <!-- <van-field v-model="actualName" name="actualName" :label="$t('register.nameLabel')" placeholder="请输入真实姓名"