1. 程式人生 > >vue-cli專案中的請求資料的與複用請求

vue-cli專案中的請求資料的與複用請求

場景:

之前剛開始使用vue-cli的時候請求後臺資料是不知道怎麼使用,後來在網上看到說是用 axios ,所以我也用 axios了,在使用過程中可以請求也沒什麼bug所以在這裡推薦給大家,如果是第一次使用麻煩跟著做吧~

安裝:

直接安裝axiox

npm install axios --save

發起請求:

在main.js檔案中引入

import axios from 'axios';//引入檔案

Vue.prototype.$http = axios;//將axios掛載到Vue例項中的$ajax上面,在專案中的任何位置通過this.$http使用

this.$ajax({

         url:'/api/articles',//url這裡是你請求後臺的資料的地址,直接把地址解除安裝api中後面的articles是檔案中的物件或者是陣列

         method:'get',//請求方式 //這裡可以新增axios文件中的各種配置

    }).then(function (res)

               { console.log(res,'成功');

    }).catch(function (err)

               { console.log(err,'錯誤');

})

//還可以像下面這麼簡寫

  this.$ajax.get('api/publishContent').then((res) => {

       console.log(res,'請求成功')

       },(err)=>{ console.log(err,'請求失敗');

   });

開始封裝:

開始這樣用領導也沒說什麼,後來子啊快都寫完的時候領導說這樣完成了專案之後不好維護,如果地址換了,每個都找,太麻煩,所以要讓我給把這些封裝起來,我這個小暴脾氣,你懂得~在心裡問候一下,所以建議大家還是封裝起來吧,也比較省事,省的自己還得多加班.封裝的是我從網上找的,自己剛學也不會,所以在網上看的

先建立了個資料夾,裡面是三個檔案

下面是檔案裡的內容

api.js:

import { fetch } from "./fetch"; //引用fetch,js

import api from './url'; //引用url.js

    //檢視使用者

    // export function lookOption(issuer,userId) { //lookOption是你要呼叫介面的名字,issuer,userId是傳進來的引數

        // return fetch({

            //api.Hallowmas 引用url.js裡面的資料

            // url:api.Hallowmas+'helloween'+issuer+'/question',

            // method:'get', //請求方法

            // params:{

           // currentUserId:userId //傳過去的引數

           // }

       // })

    // }

如果還有別的請求地址複製上面的在來一下便可以了~

fetch.js:

import axios from 'axios'; //引入axios

export function fetch(options){

return new Promise((resolve,reject)=>{

const instance = axios.create({//instance建立一個axios例項,可以自定義配置,可在axios文件中檢視詳情

//所有的請求都會帶上這些配置,比如全域性都要用的身份資訊等.

headers:{

'Content-Type': 'appliction/json',

'X-Requested-With': 'xmlhttprequest',

//'token_in_header':"gllobal_.token",//token從全域性變數那裡傳過來

},

timeout:30 * 1000 //30秒超市

});

instance(options)

.then(response => {//then請求成功之後進行實名操作

resolve(response); //把請求到的資料發到引用請求的地方

})

.catch(error => {

console.log('請求異常資訊:' +error);

reject(error);

});

});

}

這個資料夾裡的基本不需要改動~

url.js:

export default {

Hallowmas:'api',

Hallowmas:'http://mobile.qczww.cn/home/data/chapters.json?',//這個是我的例子,後面的引數是我在api資料夾裡給傳過來的

}

在元件裡面使用介面:

在你需要請求資料的頁面裡:

記得username 和phoneNumber 是你傳入的引數

溫馨提示:儘量使用封裝的axios吧,不然就領導讓你封裝,或者是你如果自己改的時候真的也是麻煩事,

小白出品,請大神勿噴~ლ(⌒▽⌒ლ)