This commit is contained in:
fooperage
2023-02-13 23:45:58 +08:00
parent 603a4aa255
commit ef1898c613
8 changed files with 1218 additions and 1362 deletions

40
src/utils/commonExcel.js Normal file
View File

@@ -0,0 +1,40 @@
import Exceljs from 'exceljs'
export const commonExport =(headers,datas,fileName) =>{
const workbook = new Exceljs.Workbook()
workbook.created = new Date();
const sheet = workbook.addWorksheet("Sheet1",{views: [{ySplit:1,state:'frozen'}]})
sheet.columns = headers
sheet.addRows(datas)
sheet.eachRow({ includeEmpty: true },(row,rowNumber)=>{
row.eachCell({ includeEmpty: true },(cell,colNumber)=>{
cell.alignment = { vertical: 'middle', horizontal: 'center'}
cell.border = {
top: {style:'thin'},
left: {style:'thin'},
bottom: {style:'thin'},
right: {style:'thin'}
}
})
})
downExcel(workbook,fileName)
}
export const downExcel = (wb,fileName)=>{
wb.xlsx.writeBuffer().then(buffer=>{
let blob = new Blob([buffer],{
type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
})
let ele = document.createElement('a')
ele.style.display = 'none'
ele.href = URL.createObjectURL(blob)
ele.download = fileName
document.body.appendChild(ele)
ele.click()
document.body.removeChild(ele)
URL.revokeObjectURL(ele.href)
wb = null
})
}