js如何实现base64转文件下载保存到本地

    

<img :src="后台返回的数据" alt="">  

   download(){
   //this.base指的是后台返回的 
   //'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACEAAAAhCAYAAAB
      
 downloadFileByBase64(this.base,'ss')
      function dataURLtoBlob(dataurl) {
          var arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1],
              bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n);
          while (n--) {
              u8arr[n] = bstr.charCodeAt(n);
          }
          return new Blob([u8arr], { type: mime });
      }

        function downloadFile(url,name='What\'s the fuvk'){
            var a = document.createElement("a")
            a.setAttribute("href",url)
            a.setAttribute("download",name)
            a.setAttribute("target","_blank")
            let clickEvent = document.createEvent("MouseEvents");
            clickEvent.initEvent("click", true, true);  
            a.dispatchEvent(clickEvent);
        }

        function downloadFileByBase64(base64,name){
            var myBlob = dataURLtoBlob(base64)
            var myUrl = URL.createObjectURL(myBlob)
            downloadFile(myUrl,name)
        }
      },

 

posted @ 2020-02-12 18:09  NorthSea丿长安づ  阅读(5625)  评论(1编辑  收藏  举报