使用vue.js和axios后如何获取更新的虚拟机?

时间:2018-10-09 18:25:06

标签: vue.js vuejs2 axios

var vm = new Vue({
  el: '#app',
  data () {
    return {
      info: null
    }
  },
  mounted () {
    axios
      .get('https://api.coindesk.com/v1/bpi/currentprice.json')
      .then(response => (this.info = response))
  }
})

console.log(vm.info)
//Why vm.info is null? I think it has already been overrided.
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<div id="app"></div>

为什么vm.info为null?我认为它已经被覆盖。

https://vuejs.org/v2/guide/

当我仅使用vue.js时,可以将其覆盖。

如何获取更新的vm.info?

1 个答案:

答案 0 :(得分:4)

由于axios.get是异步方法,因此console.log在更新信息之前执行;要检查更新的信息,您必须在then之后链接一个axios.get(...)方法,类似于axios.get(...).then(...).then(() => console.log(this.info))