Angular-将Blob保存在本地文本文件中吗?

时间:2019-09-13 11:32:02

标签: javascript angular blob

  

我有一个纯文本变量,我想将其存储并保存在   .txt文件使用Angular。

到目前为止,我已经尝试了以下方法:

var data = new Blob([text], {type: 'text/plain'});
const url= window.URL.createObjectURL(data);
window.open(url);

成为text具有纯文本内容的变量。它似乎可以正常工作,但它会在新的浏览器标签上打开de blob,我需要将其下载为whatever.txt

我该如何实现?谢谢!

2 个答案:

答案 0 :(得分:1)

解决方案可以在这里找到:

JavaScript blob filename without link

步骤如下:

  1. 创建一个隐藏的<a>标签。
  2. 将其href属性设置为Blob的URL。
  3. 将其[download] [2]属性设置为文件名。
  4. 点击<a>标签。

答案 1 :(得分:1)

这是我应用程序中的有效代码

const file = new window.Blob([data], { type: contentType });

const downloadAncher = document.createElement("a");
downloadAncher.style.display = "none";

const fileURL = URL.createObjectURL(file);
  downloadAncher.href = fileURL;
  downloadAncher.download = fileName;
  downloadAncher.click();