Esto es lo que estoy haciendo,cómo trabajar con json feed almacenado en localStorage en la aplicación phonegap?
Obtenga una solicitud en mi servidor web, la respuesta está en json. Usar plantillas de jquery para representar los datos de devolución de llamada en mi aplicación. Bastante sencillo, funciona como un encanto.
Este es el problema: quiero almacenar algunos de estos datos localmente para que mi aplicación no tenga que buscarla en el servidor cada vez (3g es lento y cada transacción daña mi UX ...). Así que aquí está lo que he intentado:
$.ajax({
url: app_domain + '/pages/home.json',
type: 'get',
datatype: 'json',
data: { mobile: "1" },
async: true,
cache: false,
success: function(data) {
//store locally
localStorage.setItem('foo', data);
//grab from local store
var bar = localStorage.getItem('foo');
// populate template with data
$.tmpl("cityTemplate", bar).appendTo('#all');
...
Esto falla. (Me di cuenta que el código es tonto, simplemente para facilitar la depuración hasta que consigo que funcione)
Si hago un simple
alert(foo);
después de agarrar los datos almacenados localmente que veo algo así como
[object, Object],[object, Object],[object, Object],...,[object, Object]
si lo hago
alert(foo[0])
me sale
'['
si lo hago
alert(foo[0].name);
me sale
'undefined'
lo tanto, mi mejor conjetura es que esto es causado por el formato de datos Cómo cambió de JSON a través de la cadena cuando se almacena localStorage. ¿Estarías de acuerdo? Y, si es así, ¿qué puedo hacer para volver al formato json?
Gracias a ton!
Ahhh, fantástico. ¡Gracias una tonelada! – istan