Forráskód Böngészése

注册表单校验逻辑

liyanbo 1 hónapja
szülő
commit
3a8d71b710
1 módosított fájl, 41 hozzáadás és 36 törlés
  1. 41 36
      src/views/RegisterLogin.vue

+ 41 - 36
src/views/RegisterLogin.vue

@@ -173,45 +173,50 @@ const rules = ref({
 
 // 处理注册
 const handleRegister = async () => {
-  try {
-    // 表单验证
-    await loginFormRef.value.validate();
-    // 获取租户名称
-    const tenantName = loginForm.value.tenantName;
 
-    if (tenantName === import.meta.env.VITE_APP_TITLE) {
-      ElMessage.error('此租户不支持注册!');
-      return;
-    }
+  if (!loginFormRef.value) return
+  await loginFormRef.value.validate(async valid => {
+    if (valid) {
+// 表单验证
+      try {
+        // 获取租户名称
+        const tenantName = loginForm.value.tenantName;
 
-    // 获取租户ID
-    const tenantId = await getTenantId(tenantName);
-    if (!tenantId) {
-      // 租户验证失败
-      return;
-    }
-    // 准备请求数据
-    const registerData = {
-      username: loginForm.value.phone,
-      nickname: loginForm.value.phone,
-      password: loginForm.value.password,
-      inviteCode: loginForm.value.inviteCode,
-      rememberMe: loginForm.value.rememberMe,
-      tenantId: tenantId
-    };
-    // 调用注册接口
-    const res = await registerSignUp({ 'Tenant-Id': tenantId },registerData);
-    // 注册成功处理
-    if (res && res.code === 0) {
-      ElMessage.success('注册成功,请登录');
-      goBackToLogin();
-    } else {
-      ElMessage.error(res && res.msg);
+        if (tenantName === import.meta.env.VITE_APP_TITLE) {
+          ElMessage.error('此租户不支持注册!');
+          return;
+        }
+
+        // 获取租户ID
+        const tenantId = await getTenantId(tenantName);
+        if (!tenantId) {
+          // 租户验证失败
+          return;
+        }
+        // 准备请求数据
+        const registerData = {
+          username: loginForm.value.phone,
+          nickname: loginForm.value.phone,
+          password: loginForm.value.password,
+          inviteCode: loginForm.value.inviteCode,
+          rememberMe: loginForm.value.rememberMe,
+          tenantId: tenantId
+        };
+        // 调用注册接口
+        const res = await registerSignUp({ 'Tenant-Id': tenantId },registerData);
+        // 注册成功处理
+        if (res && res.code === 0) {
+          ElMessage.success('注册成功,请登录');
+          goBackToLogin();
+        } else {
+          ElMessage.error(res && res.msg);
+        }
+      } catch (error) {
+        console.error('注册失败:', error);
+        ElMessage.error('注册失败,请检查输入信息或网络连接');
+      }
     }
-  } catch (error) {
-    console.error('注册失败:', error);
-    ElMessage.error('注册失败,请检查输入信息或网络连接');
-  }
+  })
 };
 
 </script>