vue中el-upload上傳圖片到七牛的示例代碼
一、思路,從后臺(tái)獲取七牛token,上傳圖片到七牛,獲取返回圖片路徑放入el-upload。
二、代碼。
<el-input v-model="listVideoQuery.orgLogo" @change="orgLogoChange"></el-input>
<el-col :span="10" class="mt10">
<el-upload class="upload-demo" :file-list="fileList2" :action="domain" :before-upload="beforeAvatarUpload" :data="form"
:on-remove="handleRemoveQrgLogo" :on-success="handleAvatarSuccess" list-type="picture" :limit="1" multiple>
<el-button size="small" type="primary" @click="upPicName='orgLogo'">點(diǎn)擊上傳</el-button>
<div slot="tip" class="el-upload__tip">只能上傳jpg/png文件,且不超過500kb</div>
</el-upload>
</el-col>
export default {
name: 'edit',
data() {
return {
upPicName:'', //上傳圖片名字
fileList1:[],
form: {}, //上傳到七牛的token
bucketQuery:{
bucket: 'website-image' //這是我用來獲取token傳給后臺(tái)的字段
},
domain: 'http://upload.qiniu.com', // 七牛云的上傳地址
qiniuaddr: 'pd6rnk9ck.bkt.clouddn.com' // 這是七牛云空間的外鏈默認(rèn)域名
}
},
methods: {
// 上傳圖片規(guī)格
beforeAvatarUpload (file) {
const isJPG = file.type === 'image/jpeg' || file.type === 'image/png'
const isLt2M = file.size / 1024 / 1024 < 5
if (!isJPG) {
return this.$message.error('上傳文件只能是 JPG或PNG 格式!')
}
if (!isLt2M) {
return this.$message.error('上傳圖片大小不能超過 5MB!')
}
return upQiniu(this.bucketQuery).then(res => {
this.form = {
token:res.data
}
})
},
//圖片改變及上傳
bannerPicChange(value) {
this.fileList1 = []
this.fileList1.push({
name: value,
url: value
})
},
handleBannerPicRemove(file, fileList) {
this.fileList1 = []
this.listVideoQuery.orgLogo= ''
},
handleAvatarSuccess(response) {
if(this.upPicName =='orgLogo'){
this.fileList1 = []
this.fileList1.push({
name: 'http://' + this.qiniuaddr + '/' + response.key,
url: 'http://' + this.qiniuaddr + '/' + response.key
})
this.listVideoQuery.orgLogo= 'http://' + this.qiniuaddr + '/' + response.key
}
this.$message({
type: 'success',
message: '上傳成功!',
duration: 2000
})
},
}
}
三、效果。

總結(jié)
以上所述是小編給大家介紹的vue中el-upload上傳圖片到七牛的示例代碼,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- vue使用el-upload上傳文件及Feign服務(wù)間傳遞文件的方法
- vue+elementUI(el-upload)圖片壓縮,默認(rèn)同比例壓縮操作
- vue結(jié)合el-upload實(shí)現(xiàn)騰訊云視頻上傳功能
- vue-cli3.0+element-ui上傳組件el-upload的使用
- 解決vue2.0 element-ui中el-upload的before-upload方法返回false時(shí)submit()不生效問題
- Vue開發(fā)之封裝上傳文件組件與用法示例
- vue使用axios上傳文件(FormData)的方法
- axios+Vue實(shí)現(xiàn)上傳文件顯示進(jìn)度功能
- Vue axios 中提交表單數(shù)據(jù)(含上傳文件)
- vue el-upload上傳文件的示例代碼
相關(guān)文章
詳解element-ui中el-select的默認(rèn)選擇項(xiàng)問題
這篇文章主要介紹了詳解element-ui中el-select的默認(rèn)選擇項(xiàng)問題,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08
Vue.js實(shí)戰(zhàn)之使用Vuex + axios發(fā)送請(qǐng)求詳解
這篇文章主要給大家介紹了關(guān)于Vue.js使用Vuex與axios發(fā)送請(qǐng)求的相關(guān)資料,文中介紹的非常詳細(xì),相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來一起看看吧。2017-04-04
基于Vue實(shí)現(xiàn)簡(jiǎn)單的貪食蛇游戲
貪食蛇是一個(gè)非常經(jīng)典的游戲,?在游戲中,?玩家操控一條細(xì)長(zhǎng)的直線,?它會(huì)不停前進(jìn),?玩家只能操控蛇的頭部朝向,?一路拾起觸碰到之物。本文將用Vue實(shí)現(xiàn)這一游戲,感興趣的可以嘗試一下2022-04-04
vue中根據(jù)時(shí)間戳判斷對(duì)應(yīng)的時(shí)間(今天 昨天 前天)
這篇文章主要介紹了vue中 根據(jù)時(shí)間戳 判斷對(duì)應(yīng)的時(shí)間(今天 昨天 前天),需要的朋友可以參考下2019-12-12
vue項(xiàng)目啟動(dòng)命令個(gè)人學(xué)習(xí)記錄
最近想要學(xué)習(xí)vue,正好看到資料,如何通過命令創(chuàng)建vue項(xiàng)目的方法,就留個(gè)筆記,下面這篇文章主要給大家介紹了關(guān)于vue項(xiàng)目啟動(dòng)命令的相關(guān)資料,需要的朋友可以參考下2023-02-02
vue 組件之間事件觸發(fā)($emit)與event Bus($on)的用法說明
這篇文章主要介紹了vue 組件之間事件觸發(fā)($emit)與event Bus($on)的用法說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-07-07
koa2+vue實(shí)現(xiàn)登陸及登錄狀態(tài)判斷
這篇文章主要介紹了koa2+vue實(shí)現(xiàn)登陸及登錄狀態(tài)判斷,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2019-08-08
前端Vue項(xiàng)目部署到服務(wù)器的全過程以及踩坑記錄
使用Vue做前后端分離項(xiàng)目時(shí),通常前端是單獨(dú)部署,用戶訪問的也是前端項(xiàng)目地址,因此前端開發(fā)人員很有必要熟悉一下項(xiàng)目部署的流程,下面這篇文章主要給大家介紹了關(guān)于前端Vue項(xiàng)目部署到服務(wù)器的全過程以及踩坑記錄的相關(guān)資料,需要的朋友可以參考下2023-05-05

