如何在axios外设置变量得到

时间:2017-05-28 19:47:50

标签: javascript axios

我无法使用此函数返回值,因为它是空的。

getNameById (id) {

    var name = ''

    axios.get('/names/?ids=' + id)
      .then(response => {
        this.response = response.data
        name = this.response[0].name
      })
      .catch(e => {
        this.errors.push(e)
      })
    // Is empty
    console.log('Name ' + name)
    return name
  }

如何在“then”中访问name变量并将其返回?

1 个答案:

答案 0 :(得分:8)

您应该返回承诺

getNameById (id) {
  return axios.get('/names/?ids=' + id)
      .then(response => {
        this.response = response.data
        return this.response[0].name
      })
  }

并使用它:

getNameById(someId)
  .then(data => {
    // here you can access the data
  });