//链接直接导出
window.location.href = process.env.BASE_API+"/manage/enterprise/exportExcelEnterprise?userId="+this.usermsgData.id;
//接口导出
getexportExcel().then(res=>{
let url = window.URL.createObjectURL(new Blob([res.data]));
let fileName = '正式客户.xls';
// let fileName = res.headers["content-disposition"].split("filename=")[1];
if ("download" in document.createElement("a")) {
const elink = document.createElement("a");
elink.download =decodeURI(fileName);
elink.style.display = "none";
elink.href = url;
document.body.appendChild(elink);
elink.click();
URL.revokeObjectURL(elink.href); // 释放URL 对象
document.body.removeChild(elink);
}else {
navigator.msSaveBlob(blob, decodeURI(fileName));
}
})
})
responseType: "blob",
dataType: 'json',
下载image
uploadCode () {
let a_link = document.createElement('a')
a_link.style.display = 'none'
a_link.href= this.formList.shop_code + '?response-content-type=application/octet-stream'
a_link.setAttribute("id", "codeLink")
a_link.setAttribute("download", "xxx")
document.body.appendChild(a_link)
a_link.click()
let objLink = document.getElementById('codeLink')
document.body.removeChild(objLink)
},
shop_code是后台返的图片链接,需要给链接后面拼接‘?response-content-type=application/octet-stream’即可
image.png多个文件下载
download(name, href){
var a = document.createElement("a"), //创建a标签
e = document.createEvent("MouseEvents"); //创建鼠标事件对象
e.initEvent("click", false, false); //初始化事件对象
a.href = href; //设置下载地址
a.download = name; //设置下载文件名
a.target="_blank"; //加上新窗口打开方式才会下载 否则只会下载最后一个
a.dispatchEvent(e); //给指定的元素,执行事件click事件
},
//下载
upload(data){
var urlList = [url1,url2];
for(var i = 0; i < urlList.length; i++){
this.download('XXX',urlList[i] + '?response-content-type=application/octet-stream');
}
},
js导出
//要导出的json数据
const jsonData = [];
this.tableData.forEach((n,i)=>{
const arrayData = {};
arrayData.registerCount = n.registerCount;
arrayData.toAuditCount = n.toAuditCount;
arrayData.supplierCount = n.supplierCount;
arrayData.enterpriseCount = n.enterpriseCount;
jsonData.push(arrayData)
});
//列标题,逗号隔开,每一个逗号就是隔开一个单元格
let str = '已注册用户数'+','+'审核中用户数'+','+'已认证供应商'+','+'已认证采购商'+'\n';
//增加\t为了不让表格显示科学计数法或者其他格式
for(let i = 0 ; i < jsonData.length ; i++ ){
for(let item in jsonData[i]){
str+=`${jsonData[i][item] + '\t'},`;
}
str+='\n';
}
//encodeURIComponent解决中文乱码
let uri = 'data:text/csv;charset=utf-8,\ufeff' + encodeURIComponent(str);
//通过创建a标签实现
let link = document.createElement("a");
link.href = uri;
//对下载的文件命名
link.download = '用户概况'+'.csv';
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
网友评论