Convert base64 to image url

The base64 bit address can also be directly placed in the src echo of img

1. Call the view interface in the created life cycle, and after getting the base64 bit, get the file object first

 created() {
    
    
    console.log(this.rowData);
    apivideoSearchimg({
    
     id: this.rowData.id }).then((res) => {
    
    
      console.log("回显idD", res);
      const img = "data:image/png;base64," + res.data[0].imgBase64;
      console.log("img", img);
      this.file = this.base64ImgtoFile(img); // 得到File对象
      console.log("thisfile", this.file);
      console.log(
        "图片地址",
        window.webkitURL.createObjectURL(this.file) ||
          window.URL.createObjectURL(this.file)
      );
      this.imgUrl =
        window.webkitURL.createObjectURL(this.file) ||
        window.URL.createObjectURL(this.file);
      this.imgList.push(this.imgUrl);
    });
  },

2. get url

  base64ImgtoFile(dataurl, filename = "file") {
    
    
      const arr = dataurl.split(",");
      const mime = arr[0].match(/:(.*?);/)[1];
      const suffix = mime.split("/")[1];
      const bstr = atob(arr[1]);
      let n = bstr.length;
      const u8arr = new Uint8Array(n);
      while (n--) {
    
    
        u8arr[n] = bstr.charCodeAt(n);
      }
      return new File([u8arr], `${
      
      filename}.${
      
      suffix}`, {
    
    
        type: mime,
      });
    },

Original link: https://www.jianshu.com/p/a66bdbef93f9

I'm Tudou, see you next time!

Guess you like

Origin blog.csdn.net/qq_33235680/article/details/125082491