0

好的。所以我听说过很多关于使用 phonegap 和 html5 构建应用程序的信息。该应用程序运行良好,但它访问 Web 服务以填充 div 以进行显示。该服务运行良好我想要实现的是一种缓存机制,用于在后台进行新请求时使用本地存储存储服务的最后一个接口。

这是我的 JavaScript 代码。请问我做错了什么。

PS 我是 html5/js 中级用户。但是,我使用 php 非常好。

function loadHome()
{

$("#post_display").html(waitText); 
$.get(api_url',{ app_key: my_app_key } ,
function(data){
    if(('localStorage' in window) && window['localStorage'] !== null)
    {
        localStorage.setItem('data_home',data); alert(localStorage.getItem(data_home));
    }
    $("#post_display").html(data) }
    );

}

到目前为止,警报有效并向我显示存储的数据。现在当用户返回页面时如何显示数据。我使用什么条件逻辑?样本

if(localstorage.data_home){ //display store data here } 
else{//run the ajax call to the api service}

我不知道该怎么做。帮助。

4

1 回答 1

0

在调用 ajax 之前检查一下。这只是一个示例,您需要重构您的源代码。

function loadHome()
{

$("#post_display").html(waitText); 
if(('localStorage' in window) && window['localStorage'] !== null && localStorage.getItem('data_home')){
    $("#post_display").html(localStorage.getItem('data_home'));
    return;
}
$.get(api_url',{ app_key: my_app_key } ,
function(data){
    if(('localStorage' in window) && window['localStorage'] !== null)
    {
        localStorage.setItem('data_home',data); alert(localStorage.getItem(data_home));
    }
    $("#post_display").html(data) }
    );

}
于 2013-09-25T10:27:05.910 回答