欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

vue中el-upload上传图片到七牛的示例代码

程序员文章站 2022-06-14 13:57:25
一、思路,从后台获取七牛token,上传图片到七牛,获取返回图片路径放入el-upload。 二、代码。

一、思路,从后台获取七牛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上传图片到七牛的示例代码,希望对大家有所帮助