javascript - Angular + HTML - 如何打开下载文件资源管理器窗口而不是自动下载?
问题描述
我正在使用 angular 和 html 来制作可下载的 UML 模板。这是我的代码,我的 ts 文件包含value
为类变量。下载本身工作正常,但我试图找出一种不对下载文件名进行硬编码的方法(在这种情况下template.txt
)。我想调出你通常下载东西时出现的文件资源管理器下载窗口。我该如何编辑它呢?
genUML() {
const step =
'==step {#}: {Resource Service}.{Operation}==\n"{Previous Step Name}" -> "{Step Name}": {request info}\nrnote left "{Previous Step Name}"\n{static data}\nendrnote\nactivate "{Step Name}"\n"{Previous Step Name}" <-- "{Step Name}": {response info}\nrnote over "{Previous Step Name}"\n{validation data (if multiple, one on each line)}\nendrnote\ndeactivate "{Step Name}"';
var data = '';
data += '@startuml\nautonumber\n';
for (let i = 0; i < this.value; i++) {
data += step;
data += '\n';
}
data += '@enduml';
const blob = new Blob([data], { type: 'application/octet-stream' });
this.fileUrl = this.sanitizer.bypassSecurityTrustResourceUrl(
window.URL.createObjectURL(blob)
);
this.value = null;
}
<button><a [href]="fileUrl" style="text-decoration:none; color:black" download="template.txt" (click)="genUML()">Download File</a></button>
解决方案
推荐阅读
- android - 按下主页按钮时不会触发onPause
- twitter-bootstrap - 简单的代码在 codepen 上没有响应
- ios - Cordova iOS 启动 comgooglemaps 失败
- parsing - 读取右递归
- centos - 在 CentOS 机器上 ./configure Nova HoneyPot 时缺少“ann”库
- sql-server - 在 SQL Server 中的总成本上添加 $ 美元符号
- javascript - 关闭图标在 Mozilla Firefox 浏览器中不起作用
- codeigniter - 在codeigniter现有数组中foreach一个模型
- c# - 在 LINQ 中将字符串转换为浮点数
- forms - 反应连接 2 个按钮