axios調用接口

axios調用接口css

1. 按照axios
npm install --save-dev axios
2.在main.js 引入axios,
設置全局屬性$http 指向axios

main.js
import axios from 'axios'
Vue.prototype.$http = axiosvue


3.data中定義一個變量
return {
testData: []
}
}
methods中定義調用API數據的方法
methods: {
getData () {
// this是指向當前vue實例,千萬不能丟掉,否則會報方法或對象undefined
// 調用的接口是豆瓣公開的,能夠直接測試調用
this.$http.get('https://api.douban.com/v2/book/1220562').then(response => {
this.testData = response.data
}).catch(error => {
console.log(error)
})
}
}
created 鉤子用來在一個實例被建立以後執行該方法
created () {
this.getData()
}webpack

4.webpack配置代理跨域
config文件夾下的index.js中的proxyTable屬性就是提供本地代理配置項,可根據Vue-cli使用插件介紹配置以下便可
代碼:
proxyTable: {
'/v2': {
target: 'https://api.douban.com',
changeOrigin: true,
pathRewrite: {
// /v2將表明target/v2
'^/v2': '/v2'
}
}
}
5. 將url:'https://api.douban.com/v2/book/1220562'修改成:'/v2/book/1220562',修改完成ios

6.web

組件數據展現

將testData綁到template裏,發現組件已經調用數據成功了npm

完整代碼:axios

<template>
    <span>{{ testData }}</span>
</template>
 
<script>
export default{
  data () {
    return {
      testData: []
    }
  },
  created () {
    this.getData()
  },
  methods: {
    getData () {
      // this是指向當前vue實例,千萬不能丟掉,否則會報方法或對象undefined
      // 調用的接口是豆瓣公開的,能夠直接測試調用
      this.$http.get('/v2/book/1220562').then(response => {
        this.testData = response.data
      }).catch(error => {
        console.log(error)
      })
    }
  }
}
</script><style type="text/css"></style>
相關文章
相關標籤/搜索