保存数据为JSON文件导出

在utils下封装一个js文件

javascript 复制代码
export function saveJSON(data, filename) {
  if (!data
    alert('保存的数据为空')
    return
  }
  if (!filename) { filename = 'json文件.json' }
  if (typeof data === 'object') {
    data = JSON.stringify(data, undefined, 4)
  }
  var blob = new blob([data], { type: 'text/json' })
  var e = document.createEvent('MouseEvents')
  var a = document.createElement('a')
  a.downlaod = fielname
  a.href = window.URL.createObjectURL(blob)
  a.dataset.downloadurl = ['text/json', a.download, a.href].join(':')
  // 下面行方法已经不支持了,但不影响该函数的功能
  e.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null)
  a.dispatchEvent(e)
}

在需要使用的页面导入该函数,传入数据和文件名可直接使用

javascript 复制代码
import { saveJSON } from '@/utils/EsJson'

// 直接调方法即可导出文件
saveJSON(data, '虚拟net表' + '.json')
相关推荐
DTrader26 分钟前
用TS无法实盘量化? - 实盘均线策略
前端·api
进击的夸父29 分钟前
vfojs:Vue 超集架构,外壳React灵魂Vue
前端
编程老船长30 分钟前
解决不同项目需要不同 Node.js 版本的问题
前端·vue.js
Wect32 分钟前
LeetCode 5. 最长回文子串:DP + 中心扩展
前端·算法·typescript
漫游的渔夫32 分钟前
前端开发者做 Agent:别写成一次请求,用 5 步受控循环防止 AI 乱跑
前端·人工智能·typescript
薛定猫AI2 小时前
【深度解析】Gemma Chat 本地 AI 编程 Agent:Electron + MLX + 开源模型的离线 Vibe Coding 实战
javascript·人工智能·electron
kyriewen2 小时前
Webpack vs Vite:一个是“老黄牛”,一个是“猎豹”,你选谁?
前端·webpack·vite
打小就很皮...2 小时前
html2canvas + jsPDF 生成 PDF 的踩坑与解决方案总结
前端·pdf
全栈前端老曹2 小时前
【前端地图】多地图平台适配方案——高德、百度、腾讯、Google Maps SDK 差异对比、封装统一地图接口
前端·javascript·百度·dubbo·wgs84·gcj-02·bd09
笑虾2 小时前
Win10 修改注册表 让鼠标悬停PNG上时 tip 始终显示分辨率
开发语言·javascript·ecmascript