Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

227
Visualizações
Vue: muestra el formulario de registro para nuevos usuarios autenticados con firebase

Tengo una aplicación Vue donde se implementa firebase como BaaS . Para verificar cuándo se autentica al usuario, estoy usando el método onAuthStateChanged que se proporciona de forma predeterminada desde firebase, pero me está dando un problema.

En detalle, estoy verificando si un usuario nunca inició sesión en la aplicación usando un proveedor de autenticación y se registró en la base de datos RTDB al compilar el formulario, al verificar authResult.additionalUserInfo.isNewUser que se proporciona desde la devolución de llamada de Firebase UI, pero esto tiene un inconveniente que necesito arreglar.

De hecho, no puedo mostrar el formulario de registro después de que se llame a la devolución de llamada exitosa también si la condición isNewUser es verdadera porque cuando se llama a onAuthStateChanged y el user no es nulo, ignorará mi declaración if() . Estoy usando este método para mostrar la interfaz de usuario de firebase y administrar esta condición:

 showFirebaseLoginUI() { fbui.start(this.$refs.firebaseWidget, { signInOptions: [ firebase.auth.EmailAuthProvider.PROVIDER_ID, firebase.auth.GoogleAuthProvider.PROVIDER_ID, firebase.auth.TwitterAuthProvider.PROVIDER_ID, firebase.auth.FacebookAuthProvider.PROVIDER_ID, ], callbacks: { signInSuccessWithAuthResult: (authResult) => { console.log(authResult) if( authResult.additionalUserInfo.isNewUser ){ console.log('New user') this.showWizard = true } else { this.$router.push({ name: 'Home' }) } } }, signInFlow: 'popup' }); }

Se mostrará el registro de la consola, pero no el asistente y el usuario será redirigido directamente a la página de inicio.

 created() { onAuthStateChanged(getAuth(app), (user) => { if( user && !this.showWizard ){ this.$router.push({ name: 'Home' }) } }) }

Dado que necesito agregar al usuario a la base de datos después de que agregue información y cuando un usuario ya haya iniciado sesión, evite que se muestre la página de inicio de sesión, ¿cómo puedo solucionar esto?

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda