使用el-image进行预览带有签名的图片,地址浏览器输入可以访问,但是组件报加载失败问题

使用fetch与createObjectURL将图片链接重新转化可解决
直接上源码例子:


html部分代码

    <!--预览图片-->

    <!--file是包含fileType,fileName,fileUrl的文件,使用者根据实际调整-->

<el-button size="mini" type="primary" @click="previewImg(url)">预览</el-button>

    <div v-show="previewSrcList.length">

      <el-image

        ref="previewImage"

        style="width: 0; height: 0"

        :preview-src-list="previewSrcList"

      />

    </div>


script部分代码

data() {

return {

url:‘https:../0000/2023/09/a6e2cef750ad4d67b09e14b09bc6df77.png?Expires=1696912598&OSSAccessKeyId=LTAI4GHZtSqUyVCZ7wVjG6UA&Signature=9JwseFLxtowChVVGhrj11E0v%2FU8%3D’//使用私有方式上传图片得到的路径例子,安全问题 前面的域名隐藏了,使用者根据实际调整

 previewSrcList: [], 
 }
},

  methods: {

   /** 预览图片 */

    async previewImg(url) {

      const res = await fetch(url)

      const blobStream = await res.blob()

      this.previewSrcList = [window.URL.createObjectURL(blobStream)]

      this.$nextTick(() => {

        this.$refs.previewImage.clickHandler()

      })

    }

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值