vue在新的标签页打开pdf文件

js部分

首先从后台获取到指定文件的二进制流

export function getProStream(downloadKey,style){
     
  return new Promise((resolve,reject)=>{
     
    axios.get(`/project/attach/stream`,
    {
     
      params:{
     downloadKey,style},
      headers:{
     
        Authorization: `Bearer ${
       token}`
      },
      responseType: 'blob'
    }).then(result=>{
     
      resolve(result.data)
    }).catch(err=>{
     
      reject(err)
    })
  });
}
getProStream(item.key,style).then(result=>{
     
  //获取到指定文件的文件流,转换为Blob对象
  let url = window.URL.createObjectURL(result)
  this.pdfUrl=url;
})

template部分

<a :href="pdfUrl" target="_blank" >打开pdf文件a>

----------------------------我是分割线---------------------------
好啦,代码就展示完毕,每天累积一点,收获就多一点!!
如有问题,请各位大佬指导

你可能感兴趣的:(vue,vue)