html - 下载 angular 8 a txt
问题描述
很好,我想在页面上有一个按钮,当我按下它时,它会下载我保存的 txt 文件,我找到了 saveAs 功能,但它给了我错误,还有其他方法可以让它更容易吗?代码:
uploader: FileUploader;
download(){
saveAs(this.uploader, 'data.txt');
}
HTML:
<button (click)="download()" class="btn"><i (click)="download()" class="fa fa-download"></i> Download</button>
saveAs 给我的错误:
TextAnomComponent.html:42 错误类型错误:无法在“URL”上执行“createObjectURL”:未找到与提供的签名匹配的函数。
解决方案
首先,您需要确保它this.uploader
是 blob 类型。
如果一切正常,那么您检查window.navigator.msSaveOrOpenBlob
浏览器是否存在
如果没有,则创建一个链接以进行下载。
if (window.navigator.msSaveOrOpenBlob) {
window.navigator.msSaveBlob(this.uploader, "data.txt");
}else {
const downloadLink = window.document.createElement('a');
// get the this.uploader file type and put in type below
downloadLink.href = window.URL.createObjectURL(new Blob([this.uploader], { type: ... }));
downloadLink.download = "data.txt";
document.body.appendChild(downloadLink);
downloadLink.click();
document.body.removeChild(downloadLink);
}
希望这有帮助!
推荐阅读
- android - 如何在 Recyclerview 案例中的 cardview 内显示交错的 gridImageView
- c# - 使用 Sprache 解析文本时,我可以确定原始字符串中的当前索引吗?
- ocaml - 如何禁用错误(警告 66):未使用打开!在沙丘
- windows-terminal - 如何在与前一个目录相同的目录中生成一个新选项卡?
- next.js - NextJS 9 - 压缩最佳实践
- python - 为什么 Python .readlines() 方法似乎在擦除文件?
- javascript - 列表状态更新时,react-native flatlist 图像闪烁
- javascript - 使用 react-navigation 在 react-native 中隐藏某些页面上的底部标签栏
- algorithm - 生成具有某些约束的大量组合列表的计算有效方法是什么?
- python - from scipy.linalg import _fblas: ImportError: DLL load failed: 找不到指定的模块