Bladeren bron

fix:兼容文件名称没有包含后缀的问题

chenjiaxin 1 maand geleden
bovenliggende
commit
a39d2c397a
2 gewijzigde bestanden met toevoegingen van 9 en 3 verwijderingen
  1. BIN
      dist.zip
  2. 9 3
      src/utils/downloadUtil.js

BIN
dist.zip


+ 9 - 3
src/utils/downloadUtil.js

@@ -1,7 +1,6 @@
 import { Message } from "element-ui";
 
 export default {
-  // 通用文件下载方法
   async fileDownload(url, fileName) {
     try {
       // 检查URL是否合法
@@ -14,7 +13,7 @@ export default {
         .toLowerCase()
         .split(".")
         .pop();
-      if (!["jpg", "jpeg", "png", "gif", "webp",'mp4','mov','mp3'].includes(fileType)) {
+      if (!["jpg", "jpeg", "png", "gif", "webp","mp4","mov","mp3"].includes(fileType)) {
         Message.error("该文件的格式不支持下载");
         return false;
       }
@@ -31,7 +30,14 @@ export default {
       const blob = await response.blob();
       const $link = document.createElement("a");
       $link.href = URL.createObjectURL(blob);
-      $link.download = fileName || url.split("/").pop() || "download";
+      
+      // 确保文件名包含正确的后缀
+      let finalFileName = fileName || url.split("/").pop() || "download";
+      if (!finalFileName.toLowerCase().endsWith(`.${fileType}`)) {
+        finalFileName = `${finalFileName}.${fileType}`;
+      }
+      $link.download = finalFileName;
+      
       document.body.appendChild($link);
       $link.click();
       document.body.removeChild($link);