/**
* 导出全周期模版
* @param paramMap proNo:项目编码,projectCycleVersion:项目周期版本
* @param successFunc 成功消息回调函数
* @param errorFunc 失败消息回调函数
*/
exportModal(paramMap) {
// responseType: 'blob' 获取了文件的二进制流
this.http.post('api/s01cross/b04/exportmonfinana', paramMap,
{responseType: 'blob', observe: 'response'}).subscribe(data => {
const link = document.createElement('a');
const blob = new Blob([data.body], {type: 'application/vnd.ms-excel'});
let fileName = data.headers.get('Content-Disposition').split(';')[1].split('filename=')[1];
const fileNameUnicode = data.headers.get('Content-Disposition').split('filename*=')[1];
// 当存在 filename* 时,取filename* 并进行解码(为了解决中文乱码问题)
if (fileNameUnicode) {
fileName = decodeURIComponent(fileNameUnicode.split('\'\'')[1]);
}
link.setAttribute('href', window.URL.createObjectURL(blob));
link.setAttribute('download', fileName);
link.style.visibility = 'hidden';
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
});
}
angular ajax 下载流文件
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 项目的管理后台有导出功能,原来是前端用ajax调取接口返回一个url,前端再下载,但是这样就需要后台在后端生成ex...
- 遇到的问题与https://www.cnblogs.com/qlqwjy/p/8971207.html这位童鞋相同...
- 有一个需求是用户批量生成账号后,可以选择是否将刚生成的账号生成Excel.当时想的就是做一个弹窗 用户点击是 就可...