Przeglądaj źródła

feature:修改密码和注册增加密码提示

(cherry picked from commit 1b3593cb909bd67ef9d189fc6617231f756b5379)
liuzhenlin 11 godzin temu
rodzic
commit
7054258db6

+ 1 - 1
src/utils/micro_request.ts

@@ -166,7 +166,7 @@ function processResponse(res) {
     return Promise.reject(new Error(message));
   } else if (code !== 200) {
     showNotify({ message: message, type: 'danger' });
-    return Promise.reject("error");
+    return Promise.reject(res.data);
   } else {
     // if (res.data.msg) {
     //   Message({

+ 10 - 4
src/view/register/index.vue

@@ -26,9 +26,13 @@
         <van-cell-group inset>
           <van-field v-model="state.form.userName" label="登录账号" placeholder="登录账号" :rules="[{ required: true, message: '请填写登录账号' },
             {validator: checkUserNameExists, message: '账号不可用'}]" />
-          <van-field v-model="state.form.password" type="password" label="密码" placeholder="密码"
+          <van-field v-model="state.form.password" :type="state.showPassword ? 'text' : 'password'" label="密码" placeholder="密码"
+            :right-icon="state.showPassword ? 'eye-o' : 'closed-eye'"
+            @click-right-icon="state.showPassword = !state.showPassword"
             :rules="[{ required: true, message: '密码不能为空'}, {validator: checkPassword, message: '密码不合法'}]" />
-          <van-field v-model="state.form.confirmPassword" type="password" label="确认密码" placeholder="确认密码"
+          <van-field v-model="state.form.confirmPassword" :type="state.showConfirmPassword ? 'text' : 'password'" label="确认密码" placeholder="确认密码"
+            :right-icon="state.showConfirmPassword ? 'eye-o' : 'closed-eye'"
+            @click-right-icon="state.showConfirmPassword = !state.showConfirmPassword"
             :rules="[{ required: true, validator: confirmPasswordSame, message: '两次输入的密码不一致' }]" />
         </van-cell-group>
       </van-form>
@@ -277,6 +281,8 @@ const pjtList = ref(<any[]>[])
 const pjtTypeList = ref(<any[]>[])
 const state = reactive({
   active: 0,
+  showPassword: false,
+  showConfirmPassword: false,
   loading: {
     signIn: false,
   },
@@ -476,8 +482,8 @@ const checkPassword = (value: string) => {
     .then(res => {
       return true
     })
-    .catch(() => {
-      return "密码不合法"
+    .catch((err) => {
+      return err.message || "密码不合法"
     })
 }
 

+ 14 - 5
src/view/user/password.vue

@@ -4,23 +4,29 @@
       <van-cell-group>
         <van-field
           v-model="state.form.oldPassword"
-          type="password"
+          :type="state.showOldPassword ? 'text' : 'password'"
           label="旧密码"
           placeholder="旧密码"
+          :right-icon="state.showOldPassword ? 'eye-o' : 'closed-eye'"
+          @click-right-icon="state.showOldPassword = !state.showOldPassword"
           :rules="[{ required: true, message: '请输入旧密码' }]"
         />
         <van-field
           v-model="state.form.newPassword"
-          type="password"
+          :type="state.showNewPassword ? 'text' : 'password'"
           label="新密码"
           placeholder="新密码"
+          :right-icon="state.showNewPassword ? 'eye-o' : 'closed-eye'"
+          @click-right-icon="state.showNewPassword = !state.showNewPassword"
           :rules="[{ required: true, message: '请输入新密码' }, {validator: checkPassword, message: '密码不合法'}]"
         />
         <van-field
           v-model="state.form.newPassword2"
-          type="password"
+          :type="state.showNewPassword2 ? 'text' : 'password'"
           label="确认密码"
           placeholder="确认密码"
+          :right-icon="state.showNewPassword2 ? 'eye-o' : 'closed-eye'"
+          @click-right-icon="state.showNewPassword2 = !state.showNewPassword2"
           :rules="[{ required: true, message: '请输入确认密码', validator: checkConfirmPassword }]"
         />
       </van-cell-group>
@@ -56,6 +62,9 @@
   const userSexList = ref(<RowDicDataType[]>[])
   const loginApi = useLoginApi()
   const state = reactive({
+    showOldPassword: false,
+    showNewPassword: false,
+    showNewPassword2: false,
     form: {
       oldPassword: '',
       newPassword: '',
@@ -82,8 +91,8 @@
       .then(res => {
         return true
       })
-      .catch(() => {
-        return "密码不合法"
+      .catch((err) => {
+        return err.message || "密码不合法"
       })
   }
   const checkConfirmPassword = (value: string) => {