javascript - promise获取数据出作用域后undefined
本文介绍了javascript - promise获取数据出作用域后undefined的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
areaScrService.getBigdataData(subject).then((result) => {
bigDataLists = result.data;
console.log(bigDataLists); //有值
return areaScrService.getSubjectData();
}).then((result) => {
//初始化yemian
initElements();
//绑定事件
_bindEvents();
}).catch((error) => {
console.log(error);
});
console.log(bigDataLists); //undefined
我就想问问,拿到的数据为什么出不了then的作用域,就算赋给全局变量,在其他地方还是undefined 不能拿出来吗? 或者说 这个值怎么放到vue的data(){}里面,小白才用vue不熟,求解,谢谢各路大神~
解决方案
var bigDataLists;
areaScrService.getBigdataData(subject).then((result) => {
bigDataLists = result.data;
console.log(bigDataLists); //有值
return areaScrService.getSubjectData();
}).then((result) => {
//初始化yemian
initElements();
//绑定事件
_bindEvents();
}).catch((error) => {
console.log(error);
});
// 这里比上面的then里的方法更先执行,所以是undefined
console.log(bigDataLists); //undefined
放入vue,data
{
data() {
return {
bigDataLists: null
}
},
created() {
areaScrService.getBigdataData(subject).then((result) => {
this.bigDataLists = result.data;
})
}
}
这篇关于javascript - promise获取数据出作用域后undefined的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文