JS 導出文件功能,下載到本地


export function exportFile(data: any, fileName: string) {
  // 聲明blob對象
  const streamData = new Blob([data], { type: 'application/octet-stream' });
  // ie || edge 瀏覽器
  if (window.navigator && window.navigator.msSaveOrOpenBlob) {
    // msSaveOrOpenBlob => 提供保存和打開按鈕
    // msSaveBlob => 只提供一個保存按鈕
    window.navigator.msSaveOrOpenBlob(streamData, fileName);
  } else {
    // 創建隱藏的可下載鏈接
    const link = document.createElement('a');
    // 下載文件名稱
    link.download = fileName;
    // link.style.visibility = 'hidden';
    link.style.display = 'none';
    // 字符內容轉變為blob地址
    link.href = window.URL.createObjectURL(streamData);
    // 觸發點擊
    document.body.appendChild(link);
    link.click();
    // 移除
    document.body.removeChild(link);
  }
}

以上是Js 導出pdf,excel,xls.txt等文件到本地的方法;

但是最近又來個新需求;想要支持導出文件時,用戶可以選擇下載文件的目錄地址;(就和我們下載lol時,選擇下載lol客戶端在電腦的哪個盤下),然后我發現這個和瀏覽器的下載設置有關,比如:

 

谷歌瀏覽器設置中通過更改這個設置,下載就會出現選擇目錄;

 

 

 

 

 

 

那有問,怎么通過js 來修改瀏覽器的下載設置呢?(哦呵,有毒吧,我不知道~~~)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM