首页 > 解决方案 > axios'then()调用外部函数无法获取数据

问题描述

  methods: {
    getHomeInfo() {
      axios.get("/js/index.json").then(this.getHomeInfoSucc());
      //err:undefined
      axios.get("/js/index.json").then(function(res) {
        console.log(res.data);
      });
      //Data available
    },
    getHomeInfoSucc(res) {
      console.log(res);
    }
  }

我在vue中使用axios,使用axios的then()中的匿名函数获取数据,但是在then()中,我调用methods中的函数获取响应数据 undefined

标签: axios

解决方案


你需要一个回调:

methods: {
    getHomeInfo() {
      axios.get("/js/index.json").then((res) => this.getHomeInfoSucc(res));
      //err:undefined
      axios.get("/js/index.json").then(function(res) {
        console.log(res.data);
      });
      //Data available
    },
    getHomeInfoSucc(res) {
      console.log(res);
    }
  }

推荐阅读