鍍金池/ 問(wèn)答/HTML5  網(wǎng)絡(luò)安全  HTML/ axios的默認(rèn)配置里,處理progress

axios的默認(rèn)配置里,處理progress

import axios from 'axios'

let config =  axios.create({
    withCredentials: true,
    headers:{
        'X-Requested-With': 'XMLHttpRequest'
    },
    onUploadProgress: p => { return 100 * ( p.loaded / p.total ) },
    onDownloadProgress: p => { return 100 * ( p.loaded / p.total ) }
})

export default config
import axios from 'config'
axios.post('/喵', {
    onUploadProgress (a){
        console.log(a)
    },
    onDownloadProgress (a){
        console.log(a)
    }
})

如何在自定義配置里將progress處理好?

因?yàn)槲颐總€(gè) axios 請(qǐng)求都需要進(jìn)度條

所以我希望這兩個(gè) Progress 返回的都是百分比而不是 Progress 事件對(duì)象,不然每個(gè) axios 請(qǐng)求都要寫一次處理 function

應(yīng)該怎么做啊?

回答
編輯回答
愛礙唉
  1. 創(chuàng)建了一個(gè)實(shí)例,用實(shí)例來(lái)寫試試:

    config.post('/喵', {
        onUploadProgress (a){
            console.log(a)
        },
        onDownloadProgress (a){
            console.log(a)
        }
    })
  2. 或者參考一下這個(gè)例子:axios 實(shí)現(xiàn)上傳圖片進(jìn)度條
2017年1月26日 23:29
編輯回答
使勁操

是這么個(gè)道理沒錯(cuò),建議返回個(gè)對(duì)象,把p也返回了

 onUploadProgress: p => { return {percentage: 100 * ( p.loaded / p.total ), p:p} },
2018年3月11日 00:48