一、项目需求
该项目为纯前端项目(Angular),工作原理为将用户输入表单的数据格式化后显示在页面上,用户可以通过点击下载按钮将格式化后的内容下载到本地,整个过程不涉及到后端。
二、代码
// previewContent是格式化后的内容,此处将其转换为Blob对象
var blob = new Blob([this.previewContent], {type : 'application/octet-stream'})
// 创建a标签
var link = document.createElement("a");
link.setAttribute("href", window.URL.createObjectURL(blob));
link.setAttribute("download", 'fileName');
link.style.visibility = 'hidden';
document.body.appendChild(link);
// 触发点击事件并销毁a标签
link.click();
document.body.removeChild(link);
下载的文件类型(后缀)由MIME决定,此处我需要导出的文件不需要后缀,所以我用的是 {type : 'application/octet-stream'},点此查看MIME类型
三、参考
https://blog.csdn.net/holdlg/article/details/54926136
四、github地址
一个生成Dockerfile的小工具——Dockerfile-Generator
文章内容是根据参考+实践理解所得,如果有错误的地方欢迎指正!