Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

201
Vistas
TypeError no detectado: no se pueden establecer propiedades de indefinido (estableciendo 'isSubcon')

necesita ayuda aquí.

Quiero que mi cajón de navegación muestre diferentes contenidos según los tipos/roles de usuario de aquellos que iniciaron sesión.

Pero encuentro este error ("Error de tipo no detectado: no se pueden establecer propiedades de indefinido (estableciendo 'isSubcon'") y mi cajón de navegación no muestra nada.

mi template

 <v-list v-if="isSubcon"> //content of drawer if user that logged in is a "Subcon" </v-list> <v-list v-if="isWPC"> //content of drawer if user that logged in is a "WPC" </v-list> <v-list v-if="isBWG"> //content of drawer if user that logged in is a "BWG" </v-list>

mi script

 data: () => ({ isSubcon: false, isWPC: false, isBWG: false, }), // I think below is where the problem occurs. created() { firebase .auth() .onAuthStateChanged((userAuth) => { if (userAuth) { firebase .auth() .currentUser.getIdTokenResult() .then(function ({ claims, }) { if (claims.customer) { this.isSubcon = true; //HERE WHERE THE PROBLEM OCCURS (i think) } else if (claims.admin) { this.isWPC =true; //THIS ALSO } else if (claims.subscriber) { this.isBWG = true; //AND THIS ALSO } } ) } }); },

Estoy usando Firebase Custom Claims para iniciar sesión y Nuxt (modo: SPA) con Vuetify para la interfaz de usuario. Entonces, ¿cómo puedo eliminar el error para poder mostrar el contenido en mi cajón de navegación?

Gracias de antemano :))

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

this depende siempre del alcance/objeto llamado y ambos data: () => ({ ... }) y created() parecen ser propiedades de otro objeto. Si lo invocas con:

 myObject.created();

entonces la solución a continuación debería hacerlo.

 created() { let that = this; firebase ... .then(function ({ claims }) { if (claims.customer) { that.isSubcon = true; //HERE WHERE THE PROBLEM OCCURS (i think) } else if (claims.admin) { that.isWPC =true; //THIS ALSO } else if (claims.subscriber) { that.isBWG = true; //AND THIS ALSO } }) }
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda