AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當前位置:首頁 > 科技  > 軟件

Vue3問題:如何將el-table導出為Excel表格?五個注意點要知道!

來源: 責編: 時間:2023-12-11 17:20:24 320觀看
導讀大家好,我是大澈!今天分享一個開發中比較常見的問題,如何導出表格。可以這么說,只要頁面上有表格出現的地方,你就要做好實現導出功能的打算,因為你永遠不知道客戶要拿表格去做什么。一、需求分析1、需求點擊紅色導出按鈕,將

NiU28資訊網——每日最新資訊28at.com

大家好,我是大澈!NiU28資訊網——每日最新資訊28at.com

今天分享一個開發中比較常見的問題,如何導出表格。NiU28資訊網——每日最新資訊28at.com

可以這么說,只要頁面上有表格出現的地方,你就要做好實現導出功能的打算,因為你永遠不知道客戶要拿表格去做什么。NiU28資訊網——每日最新資訊28at.com

一、需求分析

1、需求

點擊紅色導出按鈕,將下方表格的內容,導出為Excel文檔。NiU28資訊網——每日最新資訊28at.com

NiU28資訊網——每日最新資訊28at.com

2、問題

  • xlsx庫和file-saver庫各自的作用
  • 使用時的注意點
  • XLSX.utils.table_to_book和XLSX.write的作用

二、需求實現速覽

1、安裝依賴

npm install --save xlsxnpm install --save file-saver

2、編寫導出Excel的公共方法

在公共方法文件utils.js中,放入如下代碼。NiU28資訊網——每日最新資訊28at.com

其中,exportExcel方法接受兩個參數,name是生成excel的文件名,tableName是表格的id。NiU28資訊網——每日最新資訊28at.com

// 導入依賴import FileSaver from 'file-saver';import XLSX from 'xlsx';/*** 導出Excel表格* @param name 生成excel的文件名,如:interestTable.xlsx* @param tableName 表格的id,如:#tableId* */export const exportExcel = (name, tableName) => {let sel = XLSX.utils.table_to_book(document.querySelector(tableName))let selIn = XLSX.write(sel, { bookType: 'xlsx', bookSST: true, type: 'array' })try {FileSaver.saveAs(new Blob([selIn], { type: 'application/octet-stream' }), name)} catch (e) {if (typeof console !== 'undefined') console.log(e, selIn)}return selIn}

3、導入使用公共方法

<!-- 導出按鈕 --><el-button @click="exportExcel('interestTable.xlsx', '#tableId')">導出</el-button><!-- 表格 --><el-table id="tableId" :data="tableData" border style="width: 100%"></el-table>// 導入指定公共方法import { exportExcel } from "@/common/utils";

三、問題答案詳解

1、xlsx庫和file-saver庫各自的作用

(1)xlsx庫

xlsx是一個流行的JavaScript庫,用于在瀏覽器中讀取、解析和生成Excel文件。它支持多種Excel文件格式,包括XLSX、XLS、CSV和ODS。你可以使用xlsx庫來創建、修改和操作工作簿、工作表、單元格等Excel文件中的元素。NiU28資訊網——每日最新資訊28at.com

(2)file-saver庫

file-saver是一個用于在瀏覽器中保存文件的JavaScript庫。它提供了一個簡單的API,可以將數據保存為文件,并將其下載到用戶的本地計算機。file-saver庫通過創建一個Blob對象并觸發瀏覽器的文件下載功能來實現文件保存。NiU28資訊網——每日最新資訊28at.com

2、使用時的注意點

(1)瀏覽器兼容性

xlsx、file-saver庫依賴瀏覽器的Blob和FileSaver功能。大多數現代瀏覽器都支持這些功能,但是在某些舊版本或特定的移動瀏覽器中可能不被支持。在使用前,請確保目標瀏覽器支持Blob和FileSaver。NiU28資訊網——每日最新資訊28at.com

(2)數據格式

確保將數據正確轉換為適合xlsx庫的格式。xlsx庫支持多種數據源,如JSON、數組和HTML表格。根據你的數據源,使用適當的方法將其轉換為工作表的格式。NiU28資訊網——每日最新資訊28at.com

(3)文件格式和選項

xlsx庫支持多種Excel文件格式,如XLSX、XLS、CSV和ODS。在使用XLSX.write函數時,可以設置不同的選項來指定生成的文件類型、樣式、圖表等。查閱xlsx庫的文檔以了解更多選項和配置信息。NiU28資訊網——每日最新資訊28at.com

(4)大數據量處理

如果你要處理大量數據,尤其是在較舊或性能較低的設備上,可能會遇到性能問題。在這種情況下,你可以考慮使用流式處理或分頁加載數據,以避免內存消耗過大。NiU28資訊網——每日最新資訊28at.com

(5)錯誤處理

在使用xlsx、file-saver庫時,要注意正確處理可能出現的錯誤。例如,如果數據轉換失敗、保存文件失敗或瀏覽器不支持所需功能,需要捕獲和處理這些錯誤,并提供適當的反饋給用戶。NiU28資訊網——每日最新資訊28at.com

3、XLSX.utils.table_to_book和XLSX.write的作用

(1)XLSX.utils.table_to_book

XLSX.utils.table_to_book是xlsx庫中的一個函數,它的作用是將HTML表格轉換為Workbook對象。NiU28資訊網——每日最新資訊28at.com

在Excel文件中,Workbook是最高級別的對象,它包含了多個工作表(Worksheets)以及其他Excel文件的元數據。table_to_book函數的作用是將一個指定的HTML表格轉換為Workbook對象,以便進一步操作和處理。NiU28資訊網——每日最新資訊28at.com

具體來說,table_to_book函數將HTML表格的內容和結構解析為Workbook對象的結構。它會將表格的每一行轉換為工作表(Worksheet)中的行,將表格的每一列轉換為工作表中的列,并將單元格的內容、樣式等信息保存在對應的位置上。NiU28資訊網——每日最新資訊28at.com

(2)XLSX.write

XLSX.write是xlsx庫中的一個函數,它的作用是將Workbook對象轉換為Excel文件的二進制數據或文件流。NiU28資訊網——每日最新資訊28at.com

在Excel文件處理中,Workbook是最高級別的對象,它包含了多個工作表(Worksheets)以及其他Excel文件的元數據。XLSX.write函數的作用是將給定的Workbook對象轉換為Excel文件的二進制數據,以便保存到本地或進行其他處理。NiU28資訊網——每日最新資訊28at.com

具體來說,XLSX.write函數接受兩個參數:NiU28資訊網——每日最新資訊28at.com

  • workbook:要轉換為Excel文件的Workbook對象,它包含了要保存的數據、工作表結構、樣式和其他元數據。
  • options:一個可選的配置對象,用于指定轉換的選項,如文件類型(例如XLSX、CSV)、文件的輸出格式(例如ArrayBuffer、BinaryString、Blob等)以及其他設置。默認選項為{ type: 'array', bookType: 'xlsx' },表示將Workbook對象轉換為XLSX格式的二進制數據數組。

本文鏈接:http://www.tebozhan.com/showinfo-26-42233-0.htmlVue3問題:如何將el-table導出為Excel表格?五個注意點要知道!

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 使用Linux定時器實現定時任務和計時器應用

下一篇: 創新無界 經典流芳 心系天下三星 W24|W24 Flip 鍛鑄精英之選

標簽:
  • 熱門焦點
  • 直屏旗艦來了 iQOO 12和K70 Pro同臺競技

    旗艦機基本上使用的都是雙曲面屏幕,這就讓很多喜歡直屏的愛好者在苦等一款直屏旗艦,這次,你們等到了。據博主數碼閑聊站帶來的最新爆料稱,Redmi下代旗艦K70 Pro和iQOO 12兩款手
  • 小米平板5 Pro 12.4簡評:多專多能 兼顧影音娛樂的大屏利器

    疫情帶來了網課,網課盤活了安卓平板,安卓平板市場雖然中途停滯了幾年,但好的一點就是停滯的這幾年行業又有了新的發展方向,例如超窄邊框、高刷新率、多攝鏡頭組合等,這就讓安卓
  • 太卷!Redmi MAX 100英寸電視便宜了:12999元買Redmi史上最大屏

    8月5日消息,從小米商城了解到,Redmi MAX 100英寸巨屏電視日前迎來官方優惠,到手價12999元,比發布價便宜了7000元,在大屏電視市場開卷。據了解,Redmi MAX 100
  • 十個簡單但很有用的Python裝飾器

    裝飾器(Decorators)是Python中一種強大而靈活的功能,用于修改或增強函數或類的行為。裝飾器本質上是一個函數,它接受另一個函數或類作為參數,并返回一個新的函數或類。它們通常用
  • 只需五步,使用start.spring.io快速入門Spring編程

    步驟1打開https://start.spring.io/,按照屏幕截圖中的內容創建項目,添加 Spring Web 依賴項,并單擊“生成”按鈕下載 .zip 文件,為下一步做準備。請在進入步驟2之前進行解壓。圖
  • 一文掌握 Golang 模糊測試(Fuzz Testing)

    模糊測試(Fuzz Testing)模糊測試(Fuzz Testing)是通過向目標系統提供非預期的輸入并監視異常結果來發現軟件漏洞的方法。可以用來發現應用程序、操作系統和網絡協議等中的漏洞或
  • 10天營收超1億美元,《星鐵》比《原神》差在哪?

    來源:伯虎財經作者:陳平安即便你沒玩過《原神》,你一定聽說過的它的大名。恨它的人把《原神》開服那天稱作是中國游戲史上最黑暗的一天,有粉絲因為索尼在PS平臺上線《原神》,怒而
  • 東方甄選單飛:有些鳥注定是關不住的

    文/彭寬鴻編輯/羅卿東方甄選創始人俞敏洪帶隊的&ldquo;7天甘肅行&rdquo;直播活動已在近日順利收官。成立后一年多時間里,東方甄選要脫離抖音自立門戶的傳聞不絕于耳,&ldquo;7
  • 微博大門常打開,迎接海外畫師漂洋東渡

    作者:互聯網那些事&ldquo;起猛了,我能看得懂日語了&rdquo;。&ldquo;為什么日本人說話我能聽懂?&rdquo;&ldquo;中文不像中文,日語不像日語,但是我竟然看懂了&rdquo;&hellip;&hell
Top