Parcourir la source

fix(LoginForm): 🐞 update doSocialLogin

- 修复手动填写租户名称时,点击取消按钮,登录按钮 loading 状态未取消,并且会继续执行 LoginApi.socialAuthRedirect 方法
AhJindeg il y a 1 an
Parent
commit
2d4ed85e94
1 fichiers modifiés avec 9 ajouts et 3 suppressions
  1. 9 3
      src/views/Login/components/LoginForm.vue

+ 9 - 3
src/views/Login/components/LoginForm.vue

@@ -291,10 +291,16 @@ const doSocialLogin = async (type: number) => {
       await getTenantId()
       // 如果获取不到,则需要弹出提示,进行处理
       if (!authUtil.getTenantId()) {
-        await message.prompt('请输入租户名称', t('common.reminder')).then(async ({ value }) => {
-          const res = await LoginApi.getTenantIdByName(value)
+       try {
+          const data = await message.prompt('请输入租户名称', t('common.reminder'))
+          if (data?.action !== 'confirm') throw 'cancel'
+          const res = await LoginApi.getTenantIdByName(data.value)
           authUtil.setTenantId(res)
-        })
+        } catch (error) {
+          if(error === 'cancel') return
+        } finally {
+          loginLoading.value = false
+        }
       }
     }
     // 计算 redirectUri