javascript - 如何在ajax请求外获取ajax请求获得的参数?
本文介绍了javascript - 如何在ajax请求外获取ajax请求获得的参数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
写了一个方法,想获取用户的登录状态,
function(){
var is_login = 0;
$.getJSON(me.url.userUrl, { t: (new Date()) - 0 }, function(user) {
is_login = user.data.user.is_login;
});
return is_login;
}
但是每次返回的is_login都是0,但实际上ajax里获取的user.data.user.is_login为1.
想请教一下如何把user.data.user.is_login的值提出来。
解决方案
AJAX
异步问题 不能这么写 因为数据提前返回了
你这个代码相当于这样
function isLogin(){
var is_login = 0;
setTimeout(function(){
// 网络延迟
is_login = 1;
}, 1000);
return is_login;
}
应该返回一个 promise
对象
function isLogin(){
return $.getJSON(me.url.userUrl, { t: (new Date()) - 0 });
}
// 调用
isLogin().then(function(user){
console.log(user.data.user.is_login);
});
这篇关于javascript - 如何在ajax请求外获取ajax请求获得的参数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文