vue中el-upload上传图片到七牛的示例代码
更新时间:2018年10月19日 14:25:37 作者:baozisss
这篇文章主要介绍了vue中el-upload上传图片到七牛的示例代码,实现思路其实也很简单,需要从后台获取七牛token上传图片到七牛,具体示例代码大家跟随小编一起学习吧
一、思路,从后台获取七牛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'">点击上传</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传给后台的字段
},
domain: 'http://upload.qiniu.com', // 七牛云的上传地址
qiniuaddr: 'pd6rnk9ck.bkt.clouddn.com' // 这是七牛云空间的外链默认域名
}
},
methods: {
// 上传图片规格
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
})
},
}
}
三、效果。

总结
以上所述是小编给大家介绍的vue中el-upload上传图片到七牛的示例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
您可能感兴趣的文章:
- vue使用el-upload上传文件及Feign服务间传递文件的方法
- vue+elementUI(el-upload)图片压缩,默认同比例压缩操作
- vue结合el-upload实现腾讯云视频上传功能
- vue-cli3.0+element-ui上传组件el-upload的使用
- 解决vue2.0 element-ui中el-upload的before-upload方法返回false时submit()不生效问题
- Vue开发之封装上传文件组件与用法示例
- vue使用axios上传文件(FormData)的方法
- axios+Vue实现上传文件显示进度功能
- Vue axios 中提交表单数据(含上传文件)
- vue el-upload上传文件的示例代码
相关文章
详解element-ui中el-select的默认选择项问题
这篇文章主要介绍了详解element-ui中el-select的默认选择项问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-08-08
vue 组件之间事件触发($emit)与event Bus($on)的用法说明
这篇文章主要介绍了vue 组件之间事件触发($emit)与event Bus($on)的用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-07-07


最新评论