Yaptığım şey şu:phonegap uygulamasında localStorage'da depolanan json feed'i ile nasıl çalışılır?
Web sunucusuna istekte bulun, yanıt json'dur. Uygulamamda bu geri arama verilerini oluşturmak için jquery şablonlarını kullanma. Oldukça basit, bir çekicilik gibi çalışır.
Sorun şu: Bu verilerden bazılarını yerel olarak saklamak istiyorum, böylece uygulama her seferinde sunucudan almak zorunda kalmıyor (3g yavaş ve her işlem UX'imi acıtıyor ...). Yani burada denediğim şey:
$.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');
...
Bu başarısız.
Ben
[object, Object],[object, Object],[object, Object],...,[object, Object]
gibi bir şey görmek yerel olarak depolanan verileri kapma sonra basit
alert(foo);
yaparsanız (Ben işe almak kadar kod sadece kolay hata ayıklama için, saçma fark)
i
alert(foo[0])
do i
alırsanız ialert(foo[0].name);
yaparsanız 10
'['
i Yani, en iyi tahmin bu localStorage aracılığıyla saklandığında veri biçimi dizesine json değiştirildi alma kaynaklanır olduğunu
'undefined'
olsun. Kabul eder misin Ve eğer öyleyse, json formatına geri almak için ne yapabilirim?
Teşekkürler bir ton! bunu ayrıştırmak sonra
localStorage.setItem('foo', JSON.stringify(data));
Ve:
ahhh, fantastik. Teşekkürler bir ton! – istan