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

155
Vistas
Cómo obtener valor no almacenado en caché de localStorage

Guardo el token de acceso para la autorización en javascript localStorage . Cada vez que se carga mi aplicación frontend, quiero obtener este token para obtener el usuario.

 created() { let access = localStorage.getItem('access') console.log(access) if (!access) { console.log('access not exists') } else { console.log('access exists:', access) } }

Pero este token debería haberse sobrescrito con bastante frecuencia. Y cuando limpio este token porque el usuario cierra la sesión, debería obtener un valor nulo en Access. Pero Chrome almacena en caché este valor y el bloque 'si' todavía obtiene un token como si existiera. Esto es lo que veo en la consola:

¿Cómo puedo obtener valor no almacenado en caché? O debería dejar esto. ¿Y molestará en la producción?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

El almacenamiento local no se almacena en caché. Supongo que el problema es la forma en que limpia el almacenamiento local. Supongo que está haciendo algo como esto: localStorage.setItem('access', undefined) . Esto establecerá el elemento de almacenamiento local en la cadena 'undefined' y, si lo hace, if (!access) siempre devolverá falso. Actualmente no puede usar undefined , null o true / false en el almacenamiento local, solo cadenas . Puede comprobar el tipo almacenado imprimiendo el tipo devuelto: console.log(typeof localStorage.getItem('access')) , que debería ser una cadena.

Tienes 2 opciones:

Eliminar el elemento por completo del almacenamiento local

localStorage.removeItem('access')

Luego puede usar su implementación actual, ya que el almacenamiento local devolverá undefined en localStorage.getItem('access') .

Establezca una cadena vacía y pruebe la longitud de la cadena:

 // "clean" your access localStorage.setItem('access', ''); // Check if there is an access const access = localStorage.getItem('access'); if (access && access.length > 0) { console.log('access does exists') } else { console.log('access does NOT exists') }
about 4 years ago · Juan Pablo Isaza 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