Javascript 仅当数据尚未加载时才使用AJAX加载数据?
我需要加载JavaScript应用程序要使用的数据。我想加载以下内容:Javascript 仅当数据尚未加载时才使用AJAX加载数据?,javascript,jquery,json,ajax,Javascript,Jquery,Json,Ajax,我需要加载JavaScript应用程序要使用的数据。我想加载以下内容: 用户列表JSON 里程碑JSON 标记JSON 用户ACL权限JSON 这4项来自服务器的JSON数据应该使用AJAX加载,但只加载一次 所以我需要代码来检查数据是否已经加载,如果已经加载,就使用它。如果尚未加载,它将发出AJAX请求并加载数据,然后使用它 我有多个JavaScript文件需要访问这些数据,所以我想确保其中任何一个都可以访问它,并且无论哪一次首先调用它,都将使用AJAX加载它,并使其他脚本可以调用它,而无
- 用户列表JSON
- 里程碑JSON
- 标记JSON
- 用户ACL权限JSON
如果其中任何一个未设置,请使用AJAX加载它们。使用AJAX加载后,为下一个调用方设置这些变量,以便在不发出新AJAX请求的情况下访问它们
var userList = userJsonData;
var milestoneList = milestoneJsonData;
var tagList = tagJsonData;
var useAclPermissions = useAclPermissionsJsonData;
只需将数据存储在全局javascript变量中,当页面加载时,该变量设置为null。加载数据并将其存储在变量中的第一个脚本,所有其他脚本尝试访问变量的内容,如果未设置,则加载:
var milestoneData = null;
function getMilestoneData() {
if (milestoneData === null) {
//make the ajax request, and populate milestoneData variable
} else return milestoneData;
}
根据你可以查看aka webstorage。如果你能使用它,它可能会解决你的问题。有一个可用的。是另一种选择,在页面底部有一个非常简单的示例。希望这有帮助