我正在使用phonegap处理一个iPhone应用程序。 当用户打开应用程序并转到主页面时,我想调用一个功能来将应用程序数据库与实时数据库同步。该函数应该只被调用一次。即使用户再次点击主页面,该功能也不应该被调用,因为它已被调用。
我想在onDeviceReady()函数下调用此函数。
function onDeviceReady()
{
if(test.called) {
return false;
}else{
test();
}
}
function test(){
test.called = true;}
我使用了上述概念,但是当我点击不同的页面然后点击主页面时再次调用该函数。即因为它将页面设置值刷新为false。
我应该使用什么事件在应用程序中只调用一次该函数?
答案 0 :(得分:1)
我建议您使用sessionStorage:
function onDeviceReady()
{
if(sessionStorage.getItem("isSync") === "true") {
return false;
}else{
test();
sessionStorage.setItem("isSync", "true");
}
}
只要浏览器处于打开状态,会话存储就会存储该标志,只要您的PhoneGap应用程序处于打开状态即可。