這就是我在做什麼,如何在phonegap app中使用存儲在localStorage中的json feed?
獲取請求到我的web服務器,響應是在json。使用jQuery模板在我的應用程序中呈現回調數據。非常簡單,就像魅力一樣。
問題出在這裏:我想在本地存儲一些數據,這樣我的應用程序就不必每次都從服務器上獲取它(3g很慢,每筆交易都會傷害我的用戶體驗......)。所以這裏是我所嘗試的:
$.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');
...
這失敗了。 (我知道的代碼是愚蠢的,只是爲了方便調試,直到我得到它的工作)
如果我抓住了本地存儲的數據我看到類似
[object, Object],[object, Object],[object, Object],...,[object, Object]
後做一個簡單的
alert(foo);
如果我做
alert(foo[0])
我得到
'['
,如果我做
alert(foo[0].name);
我得到
'undefined'
所以,我最好的猜測是,這是通過當通過的localStorage存儲的數據格式充分利用JSON改爲字符串引起的。你會同意嗎?而且,如果是這樣,我能做些什麼才能將其恢復爲json格式?
謝謝!
啊,太棒了。萬分感謝! – istan