这是我下载excel文件的代码
尝试{ const response = await Axios(配置); const 输出文件名 = "treasury_LOC_" + new Date().toJSON().slice(0, 10) + ".xlsx"; const url = URL.createObjectURL(new Blob([response.data])); const link = document.createElement("a"); link.href = 网址; link.setAttribute("下载", outputFilename); document.body.appendChild(链接); 链接.点击(); } 赶上(错误){}
您好,您可以参考我的代码:
import XLSX from 'xlsx';
try {
const response = await Axios(config);
const outputFilename = "treasury_LOC_" + new Date().toJSON().slice(0, 10) + ".xlsx";
const worksheet = XLSX.utils.json_to_sheet(response.data);
// Define data types for specific columns
worksheet["B1"].t = "n"; // Column B as number data type
worksheet["C1"].t = "s"; // Column C as string data type
const workbook = XLSX.utils.book_new();
XLSX.utils.book_append_sheet(workbook, worksheet, "Sheet1");
const wbout = XLSX.write(workbook, { bookType: 'xlsx', type: 'binary' });
const url = URL.createObjectURL(new Blob([s2ab(wbout)], { type: "application/octet-stream" }));
const link = document.createElement("a");
link.href = url;
link.setAttribute("download", outputFilename);
document.body.appendChild(link);
link.click();
} catch (error) {}
function s2ab(s) {
const buf = new ArrayBuffer(s.length);
const view = new Uint8Array(buf);
for (let i = 0; i != s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF;
return buf;
}