axios请求回来的数据无法使用

使用axios请求数据,在.then()里面是可以使用的,但是在外面就没了

clipboard.png

clipboard.png


修改后

clipboard.png

clipboard.png

阅读 5k
5 个回答

是异步请求啊,先执行的最下面的那个console,这时DataAll数据为空,异步请求到数据后才填充进DataAll的

this指向不正确,应该这样写:

getData(){
    let _this = this;
    _this.$http.post(...).then(res => {
        _this.DataAll = res.data.data;
        console.log(_this.DataAll);
    });
    console.log(_this.DataAll);
}

异步

外面声明 var that = this

this 指向问题
你里面的this 指向是本身

这里肯定不是this指向问题啊,axios请求是异步的,楼上的说的对

不是this指向的问题,请求是异步的,先打印出
clipboard.png 然后在执行axios请求,

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题