真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

VueformData實(shí)現(xiàn)圖片上傳

本文實(shí)例為大家分享了Vue formData實(shí)現(xiàn)圖片上傳的具體代碼,供大家參考,具體內(nèi)容如下

成都創(chuàng)新互聯(lián)公司主要從事網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)海州,10年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):13518219792

import Vue from 'vue'
 
/**
 * 圖片上傳
 * 已注入所有Vue實(shí)例,
 * template模板里調(diào)用 $uploadFile(id)
 * 組件方法里調(diào)用 this.$uploadFile(id)
 */
const uploadFile = (id) => {
 let promise = new Promise((resolve, reject) => {
  let file = null
  let el = null
  let i = 0
  let formData = new FormData()
  document.getElementById(id).click()
  el = document.getElementById(id)
  el.addEventListener('change', function (e) {
   i++
   if (i !== 1) {
    return false
   } else {
    file = this.files[0]
    formData.append('file', file)
    formData.append('fileType', 'IMAGE')
    // 數(shù)據(jù)請(qǐng)求
    Vue.axiosfrom(Vue.api.upload, formData).then(res => {
     // 返回圖片url
     resolve(res)
    }).catch(err => {
     reject(err)
    })
   }
  })
 })
 return promise
}
 
Vue.prototype.$uploadFile = uploadFile

axios請(qǐng)求頭設(shè)置

import Vue from 'vue'
import { baseURL } from '@/config/env'
import axios from 'axios'
 
// formdata 請(qǐng)求
const axiosT = axios.create({
 baseURL: baseURL,
 headers: {
  'Content-Type': 'multipart/form-data'
 }
})
 
const XHR = ({method = 'post', qs = true, loading = false, loginRequire = true, reqComplex = false, reqContentType = 'urlencoded'}) => {
 // 帶請(qǐng)求進(jìn)度條成功方法
 const sucFunX = res => {
  return res.data
 }
 // 成功執(zhí)行方法
 const sucFunC = res => {
  return res.data
 }
 // 帶請(qǐng)求進(jìn)度條失敗方法
 const errFunX = err => {
  console.log(err, NProgress.done())
 }
 // 失敗執(zhí)行訪求
 const errFunC = err => {
  console.log(err)
 }
 // 判斷是否需要Longing
 const sucFun = loading ? sucFunX : sucFunC
 // 判斷是否需要Longing
 const errFun = loading ? errFunX : errFunC
 return {user, sucFun, errFun}
}
 
// 表單請(qǐng)求 圖片上傳
const axiosfrom = function (url = '', data = {}) {
 let {sucFun, errFun} = XHR({loading: false})
 return axiosT.post(url, data).then(sucFun).catch(errFun)
}
// 表單請(qǐng)求
Vue.prototype.$axiosfrom = axiosfrom
Vue.axiosfrom = axiosfrom

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。


當(dāng)前文章:VueformData實(shí)現(xiàn)圖片上傳
當(dāng)前路徑:http://weahome.cn/article/popjge.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部