Javascript VueJS,can';t访问“;这";或;“自我”;用同样的方法

Javascript VueJS,can';t访问“;这";或;“自我”;用同样的方法,javascript,api,vue.js,methods,axios,Javascript,Api,Vue.js,Methods,Axios,目前,我在一个问题上坚持了几个小时。 遗憾的是,我还没有通过谷歌全球搜索找到一个有效的解决方案 问题是,从api中提取数据后,我无法访问同一函数中的“self”或“this”变量。我刚刚得到一个“未定义的” getInvoice(){ var self = this axios .get(url) .then(response => (self.invoice = response.data.data)) console.log(self.invoice.in

目前,我在一个问题上坚持了几个小时。 遗憾的是,我还没有通过谷歌全球搜索找到一个有效的解决方案

问题是,从api中提取数据后,我无法访问同一函数中的“self”或“this”变量。我刚刚得到一个“未定义的”

getInvoice(){
  var self = this
  axios
    .get(url)
    .then(response => (self.invoice = response.data.data))

  console.log(self.invoice.invoice_nr) //undefined
},

首先,这不是Vue JS的问题

RESTAPI在Javascript中是异步的,无论您使用的框架是什么


现在,为了从
Promise
访问数据,您需要将其添加到
函数中

看看

要获取您的数据

getInvoice(){
  var self = this
  axios
    .get(url)
    .then(response => {
        self.invoice = response.data.data;
        console.log(self.invoice.invoice_nr);
    })
},

希望这有帮助

控制台.log
将在
中的回调之前启动,然后
将其添加到
中。然后
函数谢谢您的想法。我想我明白了谢谢你的解释。我想我现在知道如何处理这些事情了。很高兴,我能帮上忙!