【导出】前端 js 导出下载文件时,文件名前后带下划线问题

目录

导出/下载文件操作

问题

导出文件

原因

后端接口返回的文件名解析出来带有引号,导致 a 标签中 download 属性值有双引号,从而导致文件名前后带有下划线

解决

在使用 a 标签下载文件时,将文件名中的引号去掉

js 复制代码
/**
 * 将二进制的数据导出为 excel
 * @param {string} data 数据
 * @param contentType
 * @param {string} fileName 文件名称
 */
export function exportResponseData(data, contentType, fileName) {
  const downloadLink = window.document.createElement('a')
  downloadLink.href = window.URL.createObjectURL(new Blob([data], { type: contentType }))
  // downloadLink.download = fileName
  downloadLink.download = fileName.replace(/'"|"/g, '') // 【主要代码】去掉文件名中的引号
  document.body.appendChild(downloadLink)
  downloadLink.click()
  document.body.removeChild(downloadLink)
}

解决后下载文件

文件名正常

相关推荐
weixin_408099671 小时前
【实战教程】懒人精灵如何实现 OCR 文字识别?接口调用完整指南(附可运行示例)
java·前端·人工智能·后端·ocr·api·懒人精灵
没有故事、有酒1 小时前
Vue2中el-table修改表头高度和行高
javascript·vue.js·elementui
把csdn当日记本的菜鸡1 小时前
Vue3 响应式 API 简单学习
javascript·vue.js·学习
小李子呢02111 小时前
前端八股5---组件通信
前端·javascript·vue.js
Daemon1 小时前
AI Agent系列记录(第二篇)
前端·人工智能·后端
JianZhen✓1 小时前
2026——Cursor全攻略+AI编程/前端辅助工具汇总(含问题速解)
前端·ai编程
vmiao1 小时前
【JS进阶】模拟正确处理并渲染后台数据
前端·javascript
小彭努力中1 小时前
204.Vue3 + OpenLayers:加载 GIF 文件(CSS 背景实现动画标记)
前端·css·vue·openlayers·geojson·webgis
Wect1 小时前
JS手撕:函数进阶 & 设计模式解析
前端·javascript·面试
独特的螺狮粉1 小时前
开源鸿蒙跨平台Flutter开发:喝水时间提醒应用
开发语言·flutter·华为·信息可视化·开源·harmonyos·鸿蒙