vue 导出excel,支持单元格合并,背景色,列宽,字体大小等

npm下载

npm i xlsx.full.min    npm i xlsx-style

关键代码如下

 downloadExl(data, name, datab) {const wopts = {bookType: 'xlsx',bookSST: false,type: 'binary'}; //这里的数据是用来定义导出的格式类型const wb = {SheetNames: ['Sheet1'],Sheets: {},Props: {},s: {}};console.log(data)wb.Sheets['Sheet1'] = XLSX.utils.json_to_sheet(data); //通过json_to_sheet转成单页(Sheet)数据// wb.Sheets['Sheet1'] = XLSX.utils.json_to_sheet(data); //通过json_to_sheet转成单页(Sheet)数据let lattice = '' //列+  行  i+1  chine_colorlet colors = {      //数据颜色转换white: "ffffff",red: "ff0000",yellow: "ffff00",gray: "808080",blue: "0000ff",green: "008000",purple: "800080"}if ('chine_color' in datab[0]) {datab.forEach((it, j) => {Object.keys(data[0]).forEach((_, i) => {lattice = exportExcel.getColName(i + 1) + (j + 2)wb.Sheets['Sheet1'][lattice].s = {fill: { //背景色fgColor: {rgb: colors[it.chine_color]}},}})})}exportExcel.saveAs(new Blob([exportExcel.s2ab(XLSXStyle.write(wb, wopts))// exportExcel.s2ab(XLSX.write(wb, wopts))// exportExcel.s2ab(wbout)], {type: "application/octet-stream",}), name + '.' + (wopts.bookType == "biff2" ? "xls" : wopts.bookType));},


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部