最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

可能是vue中使用axios最詳細(xì)教程

 更新時(shí)間:2022年08月15日 10:05:29   作者:醉夢(mèng)者  
Axios是一個(gè)基于Promise用于瀏覽器和nodejs的HTTP客戶端,本質(zhì)上也是對(duì)原生XHR的封裝,只不過(guò)它是Promise的實(shí)現(xiàn)版本,符合最新的ES規(guī)范,下面這篇文章主要給大家介紹了關(guān)于vue中使用axios最詳細(xì)教程的相關(guān)資料,需要的朋友可以參考下

前提條件:vue-cli 項(xiàng)目

安裝:

npm axios from 'axios'

較科學(xué)的封裝好的axios:(new-axios.js)

import?axios?from?'axios'
import?{?Notify?}?from?'vant';
//?import?Vue?from?'vue'
//?import?store?from?'@/store'? // 我此項(xiàng)目沒(méi)有用到vuex,所以vuex代碼的都注釋了,需要的自己打開(kāi)使用

//?import?{ACCESS_TOKEN}?from?'@/store/mutation-types'

//?創(chuàng)建?axios?實(shí)例
const?requests?=?axios.create({
??baseURL:?process.env.VUE_APP_API,?// 基礎(chǔ)url,如果是多環(huán)境配置這樣寫,也可以像下面一行的寫死。
  // baseURL: 'http://168.192.0.123',
??timeout:?6000?//?請(qǐng)求超時(shí)時(shí)間
})

?
// 錯(cuò)誤處理函數(shù)
const?err?=?(error)?=>?{
??if?(error.response)?{
????const?data?=?error.response.data
????//?const?token?=?Vue.ls.get(ACCESS_TOKEN)
????if?(error.response.status?===?403)?{
????????Notify({?type:?'danger',?message:?data.message||data.msg?});
????}
????if?(error.response.status?===?401)?{
????????Notify({?type:?'danger',?message:?'你沒(méi)有權(quán)限。'?});
??????//?if?(token)?{
??????//???store.dispatch('Logout').then(()?=>?{
??????//?????setTimeout(()?=>?{
??????//???????window.location.reload()
??????//?????},?1500)
??????//???})
??????//?}
????}
??}
??return?Promise.reject(error)
}

//?request?interceptor(請(qǐng)求攔截器)
requests.interceptors.request.use(config?=>?{
//???const?token?=?Vue.ls.get(ACCESS_TOKEN)
??const?token?=?localStorage.getItem('token')
??if?(token)?{
????config.headers['token']?=?token?//?讓每個(gè)請(qǐng)求攜帶自定義?token?請(qǐng)根據(jù)實(shí)際情況自行修改
??}
??return?config
},?err)

//?response?interceptor(接收攔截器)
requests.interceptors.response.use((response)?=>?{
??const?res?=?response.data
??if?(res.code?!==?0&&res.code!==200)?{?
????Notify({?type:?'danger',?message:?res.message||res.msg?});
????//?401:未登錄;
????if?(res.code?===?401||res.code?===?403||res.code===999)?{
??????Notify({?type:?'danger',?message:?'請(qǐng)登錄'});
????}
????return?Promise.reject('error')
??}?else?{
????return?res
??}
},?err)

export?default?{
??requests
}

main.js 引入,添加到vue原型

import requests from '@s/basejs/new-axios.js'   // 記得改為你的路徑
Vue.prototype.rq = requests  // 此處命名為rq,你可以改

使用

this.rq.get('/api/product/get?productChannelId='+this.productChannelId).then(res=>{
    console.log(res)
})

// 傳對(duì)象參數(shù)
// get請(qǐng)求記得加params
this.rq.get('/api/product/get,{params:{name:'abc'}}).then(res=>{
    console.log(res)
})

this.rq.post('/api/product/get,{name:'abc'}).then(res=>{
    console.log(res)
})

以下步驟一般不需要

開(kāi)發(fā)環(huán)境如果要跨域,解決跨域問(wèn)題(設(shè)置代理):vue-cli 3.0的在 package.json  同級(jí)目錄新建一個(gè) vue.config.js 文件,加入下面代碼,其他版本找到配置文件的devServer加入代碼

module.exports = {
    //axios域代理,解決axios跨域問(wèn)題
    baseUrl: '/',
    devServer: {
        proxy: {
            '': {
                target: 'http://192.168.0.108:8090',
                changeOrigin: true,
                ws: true,
                pathRewrite: {

                }
            }
        }
    }
}

修改完后記得重啟項(xiàng)目應(yīng)用配置

總結(jié)

到此這篇關(guān)于vue中使用axios最詳細(xì)教程的文章就介紹到這了,更多相關(guān)vue使用axios教程內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue3+elementplus 樹(shù)節(jié)點(diǎn)過(guò)濾功能實(shí)現(xiàn)

    vue3+elementplus 樹(shù)節(jié)點(diǎn)過(guò)濾功能實(shí)現(xiàn)

    樹(shù)節(jié)點(diǎn)所展示的街道是讀取的成都市金牛區(qū)的范圍邊界線的json文件,街道下對(duì)應(yīng)內(nèi)容市通過(guò)fetch調(diào)用接口獲取的內(nèi)容,通過(guò)mapTreeData函數(shù)循環(huán)遍歷,對(duì)數(shù)據(jù)進(jìn)行處理,這篇文章主要介紹了vue3+elementplus 樹(shù)節(jié)點(diǎn)過(guò)濾功能實(shí)現(xiàn),需要的朋友可以參考下
    2024-05-05
  • 如何在vue中使用ant-design-vue組件

    如何在vue中使用ant-design-vue組件

    這篇文章主要介紹了如何在vue中使用ant-design-vue組件,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-01-01
  • vue3+webpack中npm發(fā)布組件的實(shí)現(xiàn)

    vue3+webpack中npm發(fā)布組件的實(shí)現(xiàn)

    本文主要介紹了vue3+webpack中npm發(fā)布組件的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2025-01-01
  • vue實(shí)現(xiàn)圖書管理demo詳解

    vue實(shí)現(xiàn)圖書管理demo詳解

    這篇文章主要介紹了vue實(shí)現(xiàn)圖書管理,分享了圖書管理demo用的知識(shí)點(diǎn),以及遇到問(wèn)題的總結(jié),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • vue?this.$router.go(-1);返回時(shí)如何帶參數(shù)

    vue?this.$router.go(-1);返回時(shí)如何帶參數(shù)

    這篇文章主要介紹了vue?this.$router.go(-1);返回時(shí)如何帶參數(shù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Vue-Access-Control 前端用戶權(quán)限控制解決方案

    Vue-Access-Control 前端用戶權(quán)限控制解決方案

    Vue-Access-Control是一套基于Vue/Vue-Router/axios 實(shí)現(xiàn)的前端用戶權(quán)限控制解決方案。這篇文章主要介紹了Vue-Access-Control:前端用戶權(quán)限控制解決方案,需要的朋友可以參考下
    2017-12-12
  • vue.js實(shí)現(xiàn)單選框、復(fù)選框和下拉框示例

    vue.js實(shí)現(xiàn)單選框、復(fù)選框和下拉框示例

    本篇文章主要介紹了vue.js實(shí)現(xiàn)單選框、復(fù)選框和下拉框示例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • vue 解決uglifyjs-webpack-plugin打包出現(xiàn)報(bào)錯(cuò)的問(wèn)題

    vue 解決uglifyjs-webpack-plugin打包出現(xiàn)報(bào)錯(cuò)的問(wèn)題

    這篇文章主要介紹了vue 解決uglifyjs-webpack-plugin打包出現(xiàn)報(bào)錯(cuò)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-08-08
  • elementPlus組件之表格編輯并校驗(yàn)功能實(shí)現(xiàn)

    elementPlus組件之表格編輯并校驗(yàn)功能實(shí)現(xiàn)

    本文詳細(xì)介紹了如何使用Element Plus組件實(shí)現(xiàn)表格的單條數(shù)據(jù)新增、編輯、刪除操作,并對(duì)數(shù)據(jù)進(jìn)行校驗(yàn),代碼簡(jiǎn)單易懂,感興趣的朋友跟隨小編一起看看吧
    2024-12-12
  • vue如何使用vue slot封裝公共組件

    vue如何使用vue slot封裝公共組件

    這篇文章主要介紹了vue如何使用vue slot封裝公共組件,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05

最新評(píng)論

宜丰县| 阿拉善左旗| 修水县| 绍兴县| 泾川县| 贡山| 涪陵区| 眉山市| 雷山县| 宣恩县| 兰溪市| 贡山| 永州市| 临泉县| 普兰店市| 木兰县| 察雅县| 农安县| 常德市| 上饶县| 万盛区| 洛扎县| 伊金霍洛旗| 汉中市| 敦煌市| 迭部县| 滦平县| 满城县| 朝阳区| 潜山县| 定远县| 泽州县| 唐海县| 南投县| 柞水县| 阳新县| 嘉鱼县| 津南区| 和平区| 廉江市| 东丰县|