exceljs是一個讀取,操作和編寫電子表格數據和樣式到XLSX和JSON,從Excel電子表格文件逆向工程設計的項目。之所以稱它最強,是因為它的功能強大,簡直就是專門為Excel打造的前端處理插件,到目前為止,筆者還尚未見過比這個更強大的前端插件,由於其強悍的前端處理能力,這就意味著有很多操作將減輕伺服器端壓力,而且性能更加出色!
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:提供了中文文檔
雖然以上功能還不能包括了Excel的所有功能,但也已經相當的豐富了!
在之前的文章中曾介紹過另一個不錯的前端Excel插件,感興趣的可以去看一看,exceljs擁有這麼豐富的功能,如果你想開發一個功能強大的Web電子表格,不妨多嘗試嘗試!