Ver código fonte

add botao de voltar no cadastro do prestador

Gustavo Zanatta 2 dias atrás
pai
commit
7be6c5c195
1 arquivos alterados com 19 adições e 13 exclusões
  1. 19 13
      src/pages/LoginPage.vue

+ 19 - 13
src/pages/LoginPage.vue

@@ -286,18 +286,23 @@ const actionLabel = computed(() => {
   return t("provider.login.steps.step_3.action");
 });
 
-const showBackButton = computed(() => steps.value >= 4);
+const FIRST_NAVIGABLE_STEP = 3;
 
-//
+const showBackButton = computed(() => steps.value > FIRST_NAVIGABLE_STEP);
+
+const goToStep = async (target) => {
+  steps.value = target;
+
+  await nextTick();
+
+  loginForm.value?.resetValidation();
+  flowContentRef.value?.setScrollPosition("vertical", 0);
+};
 
 const goBack = async () => {
-  if (steps.value === 4) {
-    steps.value = 3;
-  } else if (steps.value === 5) {
-    steps.value = 4;
-  } else if (steps.value === 6) {
-    steps.value = 5;
-  }
+  if (steps.value <= FIRST_NAVIGABLE_STEP) return;
+
+  await goToStep(steps.value - 1);
 };
 
 //
@@ -373,7 +378,7 @@ const onSubmit = async () => {
 
       case 3: {
         if (await validateCurrentStep()) {
-          steps.value = 4;
+          await goToStep(4);
         }
 
         break;
@@ -381,7 +386,7 @@ const onSubmit = async () => {
 
       case 4: {
         if (await validateCurrentStep()) {
-          steps.value = 5;
+          await goToStep(5);
         }
 
         break;
@@ -389,7 +394,7 @@ const onSubmit = async () => {
 
       case 5: {
         if (await validateCurrentStep()) {
-          steps.value = 6;
+          await goToStep(6);
         }
 
         break;
@@ -598,7 +603,8 @@ const validateCodeInput = async () => {
 
     stepThreeForm.value.email = email.value;
     stepThreeForm.value.phone = phone.value;
-    steps.value = 3;
+
+    await goToStep(3);
   }
 };