如何把项目的表格数据,后端数据下载到本地

当我们的表格数据 或者什么数据 想下载到本地的话 可以参考这个demo  具体场景具体加 

先上代码

function saveDataToFile(data) {


 // 遍历数组,只保留需要的键值对
  const filteredData = data.map(obj => {
    return { key1: obj.key1, key2: obj.key2 };
  });


  const jsonData = JSON.stringify(data);
  const blob = new Blob([jsonData], { type: 'application/json' });
  const url = URL.createObjectURL(blob);

  const link = document.createElement('a');
  link.href = url;
  link.download = 'test.txt';
  link.click();

  // 释放URL对象
  URL.revokeObjectURL(url);
}

在上述代码中,我们首先将数据转换为 JSON 字符串,然后创建一个 Blob 对象,并指定 MIME 类型为 application/json。接下来,通过创建一个下载链接 <a> 元素,设置链接的 href 为 Blob 对象的 URL,设置 download 属性为文件名(这里是 test.txt),最后调用 click() 方法触发下载。

你可以在需要保存数据的地方调用 saveDataToFile(data) 函数,其中 data 是你要保存的数据对象。

请注意,这种方法只能在支持 File API 的现代浏览器中使用,不适用于老旧的浏览器。另外,由于涉及到文件系统的操作,浏览器可能会有安全限制,例如对于非用户交互触发的下载操作,浏览器可能会拦截。因此,最好在用户主动操作的情况下执行文件保存操作,例如在点击按钮时保存数据到本地文件。

在浏览器环境中,new Blob() 是标准的 JavaScript API,不需要额外下载或引入任何包。它是浏览器原生支持的功能。

Blob 构造函数用于创建一个新的 Blob 对象,它接受两个参数:

  1. 数据数组,例如 [jsonData],其中 jsonData 是你要保存的数据。
  2. 一个配置对象,用于指定 Blob 的 MIME 类型,例如 { type: 'application/json' },表示创建的 Blob 对象是一个 JSON 文件。

这样就可以通过 const blob = new Blob([jsonData], { type: 'application/json' }); 创建一个 Blob 对象,用于保存数据。

请确保你的代码运行在支持 Blob API 的现代浏览器环境中,例如最新版本的 Chrome、Firefox、Safari 或 Edge 浏览器。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值