關於axios以及jsonp的簡單使用方法

vuejs前端框架做者推薦使用axios進行數據請求,axios的使用方法很是簡單,最近在使用vuejs碰到個小問題,因而記錄一下:
1.若是是npm管理前端項目的話,直接npm i axios --save-dev安裝就好,若是不是,那麼直接引用就好了
使用的時候在頁面的script中import axios from 'axios'引入,下面是es6的函數式寫法前端

getList: function (page, limit) {
  axios.get('/api/v1/topics', {
    params: {
      page: this.page || 1,
      tab: this.tab,
      limit: this.limit || 20
    }
  }).then((response) => {//這裏使用箭頭函數,那麼下面的this指向就沒有問題了
    const data = response.data
    if (data) {
      this.list = data
    }
  }).catch((error) => {
    console.log(error)
  })
}

2.axios不支持jsonp,由於axios的做者以爲jsonp不太友好,推薦用CORS方式更爲乾淨,可是jsonp支持範圍更加廣闊一些,一些老式的IE瀏覽器也能支持,因此有些公司仍是jsonp用的多些,那麼若是要使用jsonp,能夠獨立安裝
npm i jsonp --save-dev 而後在頁面中引用import jsonp from 'jsonp',使用方式也是很是簡單的:vue

getList: function () {
 jsonp(config.ajaxUrl + '路徑', null, (err, data) => {
   if (err) {
     console.error(err.message);
   } else {
     if (data.list.length > 0) {
       data.list.map((item) => this.list.push(item))
       console.log(data);
     }
   }
 })
}
相關文章
相關標籤/搜索