我需要为我的JavaScript应用加载数据才能使用。我想加载以下内容:
服务器作为JSON的这4项数据应使用AJAX加载,但只加载一次。
所以我需要检查数据是否已经加载的代码,如果是,请使用它。如果它尚未加载,它将发出一个AJAX请求并加载数据,然后使用它。
我有多个需要访问此数据的JavaScript文件,因此我想确保其中的任何一个都可以访问它,并且一旦首先调用它,将使用AJAX加载它并使其可供其他脚本调用它没有多次重复AJAX请求。
我怎样才能使用JavaScript和jQuery进行此操作?
一个基本的例子将是超级赞赏和有用的。谢谢
如果未设置其中任何一项,请使用AJAX加载它们。使用AJAX加载后,为下一个调用者设置这些变量来访问它们而不需要新的AJAX请求...
var userList = userJsonData;
var milestoneList = milestoneJsonData;
var tagList = tagJsonData;
var useAclPermissions = useAclPermissionsJsonData;
答案 0 :(得分:1)
只需将数据存储在页面加载时设置为null的全局javascript变量中。第一个加载数据的脚本,将其存储在变量中,所有其他脚本都尝试访问变量的内容,如果没有设置,则加载它:
var milestoneData = null;
function getMilestoneData() {
if (milestoneData === null) {
//make the ajax request, and populate milestoneData variable
} else return milestoneData;
}
答案 1 :(得分:0)
根据can i use,您可以查看localstorage aka webstorage。如果您可以使用它,它可能会解决您的问题。有一个jQuery plugin可用。 jstorage是另一种选择,在页面底部有一个非常简单的示例。希望这可以帮助。