*.ts
把json数据导出到Excel文件
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17import * as FileSaver from 'file-saver'; import * as XLSX from 'xlsx'; exportAsExcelFile() { let json = [{ "姓名": "***", "工號": "***", "英文名": "***", "部门": "**", "性别": "1", "手机": "+861**********", "个人邮箱": "****@**.com" }]; const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(json); const workbook: XLSX.WorkBook = { Sheets: { 'data': worksheet }, SheetNames: ['data'] }; const excelBuffer: any = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' }); this.saveAsExcelFile(excelBuffer, "模板"); } private saveAsExcelFile(buffer: any, fileName: string) { const data: Blob = new Blob([buffer], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8' }); FileSaver.saveAs(data, fileName + '_export_' + new Date().getTime() + '.xlsx'); }
使用http服务下载Excel文件到本地
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28import { Http } from '@angular/http'; constructor( private http: Http ) { } exportService(){ let downloadUrl= `../../assets/模板.xls`; return this.http.get(downloadUrl,{responseType:3}).map(res => { return res; }); } exportAsExcelFile() { this.exportService().subscribe(res => { // let res=res.json();可能要转化类型 var blob = new Blob([res.json()], { type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" }); var objectUrl = URL.createObjectURL(blob); var a = document.createElement('a'); document.body.appendChild(a); a.setAttribute('style', 'display:none'); a.setAttribute('href', objectUrl); a.setAttribute('download', '模板.xlsx'); a.click(); document.body.removeChild(a); //释放URL地址 URL.revokeObjectURL(objectUrl); }); }
最后
以上就是大意镜子最近收集整理的关于Angular4 导出Excel文件的全部内容,更多相关Angular4内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复