当前位置:   article > 正文

若依框架导出下载pdf/excel以及导入打印等_若依导出excel

若依导出excel

一、打印文件

// 报表打印
handlePdf(row) {
 	wayAPI(row.billcode).then((res) => {
 		var binaryData = [];
 		binaryData.push(res);
 		let url = window.URL.createObjectURL(new Blob(binaryData, {
 			type: "application/pdf"
 		})); 					
 		window.open("/static/pdf/web/viewer.html?file=" + encodeURIComponent(url));
 	});
},
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

二、下载文件,当返回的是文件路径时候(比如:/file/文件.pdf),直接用this.download()方法

waysAPI().then((response) => {
 	this.download(response.data);//response.data是返回的路径
});
//这里的waysAPI是已经封装好了请求
  • 1
  • 2
  • 3
  • 4

三、下载文件,当返回是文件流的形式时候(文件流)

excels(qparams).then(response => { //qparams是接口参数
		const blob = new Blob([response], {
		type: "application/vnd.ms-excel;charset=utf-8"
		});
		const fileName = '下载的表格名称' + '.xlsx';
		if (window.navigator.msSaveOrOpenBlob) {
				navigator.msSaveBlob(blob, fileName);
		} else {
		const link = document.createElement("a");
		link.href = window.URL.createObjectURL(blob);
		link.download = fileName;
		link.click();
		window.URL.revokeObjectURL(link.href);
		}
});
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

上面是excel,如果是pdf,那么

const blob = new Blob([res.data], {type: 'application/pdf'});
  • 1

api.js文件中

// 导出入库单
export function excels(query) {
    return request({
        url: 'urls',
        method: 'get',
        params: query,
		responseType: 'blob' //这个必须,不然会乱码
    })
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/595005
推荐阅读
相关标签
  

闽ICP备14008679号