vue项目上传base64位图片; 及预览效果

第一步:html部分

<input type="file" style="display: none;" name="img" ref="inputFile" id="" @change="changeFile">
      <div>
        <button @click="clickFile">上传图片</button>
      </div>
      <div>
        <img :src="item" v-for="(item, index) in imgData" :key="index" alt="">
      </div>

第二步:change事件

changeFile (e) {
      if (this.imgData.length < 2) {
        for (var i = 0; i < this.$refs.inputFile.files.length; i++) {
          var imgFile = this.$refs.inputFile.files[i]
          console.log(imgFile.size)
          if (imgFile.size > 1 * 1024 * 1024) return alert('不能超过1m')
          var reader = new FileReader()
          reader.onload = (res) => {
            this.imgData = this.imgData.concat(res.target.result)
          }
          reader.readAsDataURL(imgFile)
        }
      } else {
        alert('最多只能上传2张图片')
      }
    }

第三步: 模拟点击

clickFile () {
      this.$refs.inputFile.click()
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值