Angular - 如何将blob保存到本地文本文件中?

3

我有一个纯文本变量,希望使用Angular将其存储并保存到.txt文件中。

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

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

如果变量text包含纯文本内容,似乎可以正常工作,但它会在新的浏览器标签页中打开blob,而我需要将其下载为whatever.txt

我该如何实现这一点?谢谢!


1
看看这个 https://dev59.com/nGIk5IYBdhLWcg3wYtP7 - Rahul K Pandey
1
终于在这里找到了解决方案:JavaScript blob filename without link - Iñigo
2个回答

4
解决方案在此:

JavaScript blob filename without link

步骤如下:
1.创建一个隐藏的<a>标签。
2.将其href属性设置为blob的URL。
3.将其download属性设置为文件名。
4.单击<a>标签。

3

这是我应用程序中的可运行代码

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();

你能分享一个 https://stackblitz.com/ 的示例吗?有个实时的例子会很有帮助。 - Royer Adames

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接