我有一个jQuery / Phonegap应用程序,它使用一堆AJAX从JSON Web服务加载会话变量。我正在尝试设置一个环境,其中所有会话数据在加载时都是新鲜的,然后在运行函数时创建。我的问题是其中一个键没有在当前会话中加载。如果我不清除它将在未来的运行中出现。例如,当我通过on.click函数运行时:
$(document).on("click", "#page_login_submit", function () {
//Clear UID
sessionStorage.removeItem('uid');
console.log("Setting Token");
setToken();
console.log(sessionStorage.token);
console.log("Testing Connection");
testConnect();
console.log("Done");
console.log(sessionStorage.uid);
});
我每次都获得令牌,但除非我在开始时不删除uid,否则我不会得到它。显然,在testConnect()之后删除了id,即使removeItem在该函数之前运行。如果我注释掉removeItem('uid),它会出现在第一个控制台输出的第二个上。
处理sessionStorage值的正确方法是什么?