vue 上传图片

这段代码展示了在前端如何实现图片上传功能,包括限制上传文件类型为JPG、JPEG和PNG,以及限制文件大小不超过2MB。通过`handleAvatarChange`处理文件选择后的操作,使用`beforeAvatarUpload`进行上传前的验证。当文件类型或大小不满足条件时,会显示错误提示。
摘要由CSDN通过智能技术生成
<el-upload
   v-if="activeUsage.name==='上传图片'"
   class="avatar-uploader"
   action="#"
   :show-file-list="false"
   :on-change="handleAvatarChange"
   :before-upload="beforeAvatarUpload"
   :auto-upload="false"
   accept=".jpg,.jpeg,.png"
 >
   <img v-if="imageUrl" :src="imageUrl" class="avatar">
   <i v-else class="el-icon-plus avatar-uploader-icon" />
</el-upload>
handleAvatarChange(file) {
      console.log(file)
      this.imageUrl = URL.createObjectURL(file.raw)
    },
    beforeAvatarUpload(file) {
      const types = ['image/jpeg', 'image/jpg', 'image/png']
      const isImage = types.includes(file.type)
      const isLt2M = file.size / 1024 / 1024 < 2
      if (!isImage) {
        this.$message.error('上传图片只能是 JPG、JPEG、PNG 格式!')
      }
      if (!isLt2M) {
        this.$message.error('上传头像图片大小不能超过 2MB!')
      }
      return isImage && isLt2M
    },
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值