Web前端最強JavaScript Excel處理插件——exceljs

2020-01-03     最美分享Coder

介紹

exceljs是一個讀取,操作和編寫電子表格數據和樣式到XLSX和JSON,從Excel電子表格文件逆向工程設計的項目。之所以稱它最強,是因為它的功能強大,簡直就是專門為Excel打造的前端處理插件,到目前為止,筆者還尚未見過比這個更強大的前端插件,由於其強悍的前端處理能力,這就意味著有很多操作將減輕伺服器端壓力,而且性能更加出色!







Github地址

https://github.com/exceljs/exceljs

安裝

安裝我們當然是首選npm

npm install exceljs

創建工作簿

var workbook = new Excel.Workbook();

設置工作簿屬性

workbook.creator = 'Me';workbook.lastModifiedBy = 'Her';workbook.created = new Date(1985, 8, 30);workbook.modified = new Date();workbook.lastPrinted = new Date(2016, 9, 27);
// 將工作簿日期設置為1904日期系統workbook.properties.date1904 = true;

工作簿視圖

「工作簿」視圖控制Excel在查看工作簿時打開多少個單獨的窗口。

workbook.views = [  {    x: 0, y: 0, width: 10000, height: 20000,    firstSheet: 0, activeTab: 1, visibility: 'visible'  }]

添加工作表

var sheet = workbook.addWorksheet('My Sheet');

用addWorksheet函數的第二個參數設置工作表的選項。

  • 例如:
// 創建一個紅色標籤顏色的工作表var sheet = workbook.addWorksheet('My Sheet', {properties:{tabColor:{argb:'FFC0000'}}});// 創建一個隱藏網格線的工作表var sheet = workbook.addWorksheet('My Sheet', {properties: {showGridLines: false}});// 創建一個第一行和列凍結的工作表var sheet = workbook.addWorksheet('My Sheet', {views:[{xSplit: 1, ySplit:1}]});

刪除工作表

使用工作表id從工作簿中刪除工作表。

  • 例如:
// 創建工作表var sheet = workbook.addWorksheet('My Sheet');// 使用工作表ID刪除工作表workbook.removeWorksheet(sheet.id)

訪問工作表

// 疊代所有sheet// 注意:workbook.worksheets.forEach仍然可以工作,但這個方式更好workbook.eachSheet(function(worksheet, sheetId) {  // ...});// 按名稱獲取表格var worksheet = workbook.getWorksheet('My Sheet');// 按ID獲取表格var worksheet = workbook.getWorksheet(1);

。。。。。。以上只是部分文檔中的介紹,感興趣的小夥伴可以移步Github直接查看詳細的文檔,完整功能了解可參考下一個標題

PS:提供了中文文檔

完整功能列表

  • 創建工作簿
  • 設置工作簿屬性
  • 工作簿視圖
  • 添加工作表
  • 刪除工作表
  • 訪問工作表
  • 工作表狀態
  • 工作表屬性
  • 頁面設置
  • 頁眉和頁腳
  • 工作表視圖
    1. 凍結視圖
    2. 拆分視圖
  • Auto Filters
  • 處理單個單元格
  • 合併單元格
  • 定義名稱
  • 數據驗證
  • 樣式
    1. 數字格式
    2. 字體
    3. 對準
    4. 邊框
    5. 填充
    6. 富文本
  • 大綱級別
  • 圖片
  • 文件 I/O
  • XLSX:讀 XLSX寫 XLSX
  • CSV:讀 CSV寫 CSV
  • Streaming I/O:Streaming XLSX
  • 瀏覽器
  • 價類型
    1. 空值
    2. 合併單元格
    3. 數值
    4. 字符串值
    5. 日期值
    6. 超連結值
    7. 公式值
    8. 豐富的文本值
    9. 布爾值
    10. 錯誤值

    雖然以上功能還不能包括了Excel的所有功能,但也已經相當的豐富了!

    總結

    在之前的文章中曾介紹過另一個不錯的前端Excel插件,感興趣的可以去看一看,exceljs擁有這麼豐富的功能,如果你想開發一個功能強大的Web電子表格,不妨多嘗試嘗試!


    文章來源: https://twgreatdaily.com/M0yLbG8BMH2_cNUg0Yy4.html