欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在Vue中實(shí)現(xiàn)Excel導(dǎo)出功能(數(shù)據(jù)導(dǎo)出)

 更新時(shí)間:2024年10月26日 16:41:47   作者:南木元元  
本文分享了如何在前端導(dǎo)出Excel文件,強(qiáng)調(diào)了前端導(dǎo)出的即時(shí)性、便捷性、靈活性和定制化優(yōu)勢(shì),以及減輕后端服務(wù)器負(fù)擔(dān)的特點(diǎn),詳細(xì)介紹了ExcelJS和FileSaver.js兩個(gè)工具庫的使用方法和主要功能,最后通過Vue實(shí)現(xiàn)了Excel的導(dǎo)出功能

前端導(dǎo)出excel

導(dǎo)出Excel文件的方式多種多樣,可以前端導(dǎo)出,也可以后端導(dǎo)出,本文來分享一下如何在前端導(dǎo)出excel文件。以下幾點(diǎn)是前端導(dǎo)出Excel文件的好處:

  • 即時(shí)性與便捷性:用戶可以在需要時(shí)立即導(dǎo)出當(dāng)前頁面或視圖中的數(shù)據(jù),無需等待后端處理,提高了操作的即時(shí)性和便捷性。
  • 靈活性與定制化:前端導(dǎo)出允許開發(fā)者根據(jù)用戶需求定制Excel文件的格式、內(nèi)容和樣式,提供高度靈活性和個(gè)性化服務(wù)。
  • 減輕服務(wù)器負(fù)擔(dān):數(shù)據(jù)處理和文件生成的工作在前端完成,減少了后端服務(wù)器的負(fù)擔(dān),提高了系統(tǒng)整體性能和響應(yīng)速度。

安裝依賴 ExcelJS

ExcelJS是一個(gè)用于在JavaScript中創(chuàng)建和操作Excel文件的庫。它支持讀取、編輯和生成Excel文件,ExcelJS的主要特點(diǎn)包括:

  • 創(chuàng)建和編輯工作簿:可以創(chuàng)建新的Excel工作簿或編輯現(xiàn)有的工作簿。
  • 支持格式化:可以設(shè)置單元格的格式,包括字體、邊框、填充顏色等。
  • 操作數(shù)據(jù):可以在單元格中讀寫數(shù)據(jù),包括文本、數(shù)字和日期。
  • 支持多種Excel特性:包括合并單元格、添加圖表和插入圖片等。
  • 無依賴:ExcelJS是純JavaScript實(shí)現(xiàn),不依賴于其他庫,因此可以在瀏覽器和Node.js環(huán)境中使用。

FileSaver.js

FileSaver.js是一個(gè)適用于Web應(yīng)用的客戶端文件保存解決方案,它實(shí)現(xiàn)了HTML5的saveAs()接口,使得Web應(yīng)用能夠在客戶端生成文件并觸發(fā)下載,而無需將文件發(fā)送到服務(wù)器。主要功能:

  • 保存文件:FileSaver.js允許開發(fā)者在客戶端創(chuàng)建Blob(二進(jìn)制大對(duì)象)或File對(duì)象,并使用saveAs()方法將其保存為本地文件。
  • 跨瀏覽器兼容:它提供了跨瀏覽器的兼容性,包括處理不同瀏覽器對(duì)Blob和saveAs()方法的支持差異。
  • 自定義文件名:在保存文件時(shí),開發(fā)者可以指定文件名,以滿足用戶的個(gè)性化需求。

安裝依賴庫:

npm install exceljs
npm install file-saver

ExcelJS基本使用 新建一個(gè)excel工作簿

const workbook = new ExcelJS.Workbook();

工作簿中新建一張工作表

const sheet = workbook.addWorksheet('Sheet1');

工作表中新增一行

worksheet.addRow({id: 1, name: 'yuan'})

更多可以參考官方文檔:https://github.com/exceljs/exceljs/blob/HEAD/README_zh.md

導(dǎo)出excel

現(xiàn)在來測試下:

exportExcel() {
    // 創(chuàng)建工作簿
    const workbook = new ExcelJS.Workbook();
    const worksheet = workbook.addWorksheet("My Sheet");
    // 添加列標(biāo)題
    worksheet.columns = [
    { header: "姓名", key: "name", width: 30 },
    { header: "年齡", key: "age", width: 10 },
    { header: "城市", key: "city", width: 20 },
    ];
    // 添加數(shù)據(jù)
    worksheet.addRow({ name: "張三", age: 25, city: "北京" });
    worksheet.addRow({ name: "李四", age: 30, city: "上海" });
    //  寫入buffer,導(dǎo)出Excel文件
    workbook.xlsx.writeBuffer().then((buffer) => {
    FileSaver.saveAs(
        new Blob([buffer], { type: "application/octet-stream" }),
        "表格.xlsx"
    );
    });
},

效果:

到此這篇關(guān)于在Vue中實(shí)現(xiàn)Excel導(dǎo)出功能(數(shù)據(jù)導(dǎo)出)的文章就介紹到這了,更多相關(guān)vue excel導(dǎo)出內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用 Vue cli 3.0 構(gòu)建自定義組件庫的方法

    使用 Vue cli 3.0 構(gòu)建自定義組件庫的方法

    本文旨在給大家提供一種構(gòu)建一個(gè)完整 UI 庫腳手架的思路。通過實(shí)例代碼給大家講解了使用 Vue cli 3.0 構(gòu)建自定義組件庫的方法,感興趣的朋友跟隨小編一起看看吧
    2019-04-04
  • Vue2中使用tailwindCss的詳細(xì)教程

    Vue2中使用tailwindCss的詳細(xì)教程

    Tailwind CSS是一個(gè)流行的前端CSS框架,它基于原子設(shè)計(jì)原則,提供了一套預(yù)構(gòu)建的CSS樣式類,旨在幫助開發(fā)者快速地創(chuàng)建響應(yīng)式、可定制的用戶界面,本文給大家介紹了Vue2中使用tailwindCss的詳細(xì)教程,需要的朋友可以參考下
    2024-09-09
  • 解決VMware中vmware-vmx.exe進(jìn)程無法關(guān)閉以及死機(jī)等問題

    解決VMware中vmware-vmx.exe進(jìn)程無法關(guān)閉以及死機(jī)等問題

    這篇文章主要介紹了解決VMware中vmware-vmx.exe進(jìn)程無法關(guān)閉以及死機(jī)等問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • vue過濾器實(shí)現(xiàn)日期格式化的案例分析

    vue過濾器實(shí)現(xiàn)日期格式化的案例分析

    這篇文章主要介紹了vue過濾器實(shí)現(xiàn)日期格式化的案例分析,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07
  • Vue路由模塊化配置的完整步驟

    Vue路由模塊化配置的完整步驟

    這篇文章主要給大家介紹了關(guān)于Vue路由模塊化配置的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Vue具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • vue使用axios?post發(fā)送json數(shù)據(jù)跨域請(qǐng)求403的解決方案

    vue使用axios?post發(fā)送json數(shù)據(jù)跨域請(qǐng)求403的解決方案

    這篇文章主要介紹了vue使用axios?post發(fā)送json數(shù)據(jù)跨域請(qǐng)求403的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • ElementUI中el-input無法輸入、修改及刪除問題解決辦法

    ElementUI中el-input無法輸入、修改及刪除問題解決辦法

    這篇文章主要給大家介紹了關(guān)于ElementUI中el-input無法輸入、修改及刪除問題的解決辦法,這種問題產(chǎn)生是因?yàn)閕nput在vue中的受控,我們需要去重新改變一下監(jiān)聽和實(shí)現(xiàn),需要的朋友可以參考下
    2023-11-11
  • 解決Vue router-link綁定事件不生效的問題

    解決Vue router-link綁定事件不生效的問題

    這篇文章主要介紹了解決Vue router-link綁定事件不生效的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • vue中選中多個(gè)選項(xiàng)并且改變選中的樣式的實(shí)例代碼

    vue中選中多個(gè)選項(xiàng)并且改變選中的樣式的實(shí)例代碼

    這篇文章主要介紹了vue中選中多個(gè)選項(xiàng)并且改變選中的樣式,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Vue3實(shí)現(xiàn)pdf在線預(yù)覽的三種方式

    Vue3實(shí)現(xiàn)pdf在線預(yù)覽的三種方式

    這篇文章主要為大家詳細(xì)介紹了使用Vue3實(shí)現(xiàn)pdf在線預(yù)覽的三種常用方式,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-02-02

最新評(píng)論