13.記錄Vue項(xiàng)目導(dǎo)出excel出現(xiàn)的問(wèn)題

1,首先引入 XLSX 和 FileSaver 插件

yarn add xlsx file-saver -S

2,在需要使用的頁(yè)面 import

import FileSaver from 'file-saver'
import XLSX from 'xlsx'

3,出現(xiàn)的問(wèn)題,導(dǎo)出的數(shù)據(jù)會(huì)被自動(dòng)轉(zhuǎn)換等。如下圖 數(shù)據(jù)含有 - 特殊符號(hào)時(shí)數(shù)據(jù)變?yōu)槿掌诟袷?/p>

table格式
<Table id="tab"></Table>
//導(dǎo)出Excel
    exportToExcel () {
        let self = this;
        let et = XLSX.utils.table_to_book(document.getElementById('tab')); //此處傳入table的DOM節(jié)點(diǎn)
        let etout = XLSX.write(et, { 
            bookType: 'xlsx', 
            bookSST: true, 
            type: 'array' 
        });
        try {
            FileSaver.saveAs(new Blob([etout], { 
                type: 'application/octet-stream' 
            }),  ' 統(tǒng)計(jì).xlsx');   //統(tǒng)計(jì).xlsx 為導(dǎo)出的文件名
            self.$Message.info("導(dǎo)出Excel成功");
        } catch (e) {
            console.log(e, etout) ;
            self.$Message.error("導(dǎo)出Excel失敗,請(qǐng)刷新后重試");
        }
        return etout;
    },
錯(cuò)誤的格式
<Table id="tab"></Table>
//導(dǎo)出Excel
exportToExcel () {
        let self = this;
        let xlsxParam = { raw: true };  // 轉(zhuǎn)換excel時(shí)使用原始格式
        let et = XLSX.utils.table_to_book(document.getElementById('tab'),xlsxParam); //此處傳入table的DOM節(jié)點(diǎn)
        let etout = XLSX.write(et, { 
            bookType: 'xlsx', 
            bookSST: true, 
            type: 'array' 
        });
        try {
            FileSaver.saveAs(new Blob([etout], { 
                type: 'application/octet-stream;charset=utf-8' 
            }),  ' 統(tǒng)計(jì).xlsx');   //統(tǒng)計(jì).xlsx 為導(dǎo)出的文件名
            self.$Message.info("導(dǎo)出Excel成功");
        } catch (e) {
            console.log(e, etout) ;
            self.$Message.error("導(dǎo)出Excel失敗,請(qǐng)刷新后重試");
        }
        return etout;
    },
正確的格式
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容