2011-12-14 25 views
17

He aprendido la diferencia entre sessionStorage (persistir durante la sesión) y localStorage (persiste para siempre si no se elimina).¿Cuándo debería usar html5 sessionStorage?

Veo que localStorage se puede utilizar como una mejor versión de cookie. (más tamaño, no viajar al servidor para cada solicitud HTTP como lo hace la cookie).

Pero para sessionStorage, ¿estoy pensando en cuándo debería usarlo efectivamente?

Pensé en las entradas del usuario en campos de texto en la página A y luego se mueve a la página B dentro de la misma pestaña o ventana del navegador, la página B puede buscar sessionStorage.

Realmente no puedo expandir mi conjetura más que en el escenario anterior. ¿Alguien podría decirme cómo se puede usar sessionStorage?

Respuesta

19

Con las interfaces dinámicas impulsadas por ajax, muchas veces no hay nada que guarde el estado actual de cómo se ve la interfaz (como qué pestaña se selecciona, por ejemplo). sessionStorage se puede usar para almacenar el estado de la interfaz, por lo que cuando regrese a una página, puede restaurar la pantalla de la forma en que el usuario la estaba mirando.

Otro uso sería si varias páginas de profundidad está trabajando en un solo objeto, podría almacenar la identificación como una variable global: currentInvoiceId.

La configuración del usuario que se necesita en cada página, como un diseño o plantilla especial, se puede cargar una vez por adelantado y poner en sessionStorage para facilitar el acceso.

Algunas cosas que solo desea que el usuario vea una vez por cada inicio de sesión, como una ventana emergente de noticias. Puede almacenar que ya lo han visto en sessionStorage. Esto también funcionaría para las acciones que solo desea que el usuario haga una vez por cada inicio de sesión.

Es una buena alternativa para pasar datos entre páginas usando viewstate, <input> campos ocultos o parámetros de URL.

+1

Interesante, finalmente puedo eliminar esas feas entradas ocultas o div de páginas HTML :) –

+0

¿Hay algún buen uso para sessionStorage en aplicaciones de una sola página donde el estado puede almacenarse fácilmente en la memoria (objeto javascript)? –

+0

@ PauFracés Quizás simplemente preservando el estado en caso de que el navegador falle. Apesta para completar un formulario, bloquear tu navegador y perder todo. – ThinkingStiff

Cuestiones relacionadas