自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

再見Excel!超強(qiáng)國(guó)產(chǎn)開源在線表格Luckysheet走紅GitHub

新聞 前端
今天,猿妹要和大家推薦一款功能強(qiáng)大、配置簡(jiǎn)單、完全開源的用純JavaScript編寫的前端表格庫(kù),對(duì)它的評(píng)價(jià)只有【用它!】

[[346693]]

 目前比較流行的辦公應(yīng)用主要有Excel、WPS、石墨文檔等等,今天,猿妹要和大家推薦一款功能強(qiáng)大、配置簡(jiǎn)單、完全開源的用純JavaScript編寫的前端表格庫(kù),對(duì)它的評(píng)價(jià)只有【用它!】

Luckysheet具備了大部分Excel中的常用功能,比如文字與單元格的樣式調(diào)整與公式的使用等。除此之外還提供了獨(dú)有的復(fù)制時(shí)轉(zhuǎn)換格式(比如 json 等)以及其他格式的數(shù)據(jù)導(dǎo)入導(dǎo)出等,可以說Excel具備的常用功能它也都有了。

此外,因?yàn)長(zhǎng)uckysheet采用純JavaScript編寫,因此它可以嵌入到任何前端項(xiàng)目或應(yīng)用程序中,便于實(shí)現(xiàn)集成和自動(dòng)化。不過在圖表方面現(xiàn)在只支持了常用的ECharts,其他圖表框架需要等待以后陸續(xù)支持。

目前,Luckysheet已經(jīng)在GitHub上標(biāo)星3.9K,累計(jì)分支292(GitHub地址:https://github.com/mengshukeji/Luckysheet/blob/master/README-zh.md)

整體架構(gòu)

首先我們一起來看看Luckysheet的格式,一個(gè)完整的Luckysheet表格文件的數(shù)據(jù)格式為:luckysheetfile,一個(gè)表格文件包含若干個(gè)sheet文件,對(duì)應(yīng)excel的sheet0、sheet1等。

一個(gè)Luckysheet文件的示例如下,該表格包含3個(gè)sheet:luckysheetfile = [ {sheet1設(shè)置}, {sheet2設(shè)置}, {sheet3設(shè)置} ] 相當(dāng)于excel的3個(gè)sheet

文件中的一個(gè)sheet的數(shù)據(jù)luckysheetfile[0]的結(jié)構(gòu)如下:

  1.     "name""Cell"//工作表名稱 
  2.     "color"""//工作表顏色 
  3.     "index""0"//工作表索引 
  4.     "status""1"//激活狀態(tài) 
  5.     "order""0"//工作表的順序 
  6.     "hide"0,//是否隱藏 
  7.     "row"36//行數(shù) 
  8.     "column"18//列數(shù) 
  9.     "config": { 
  10.         "merge":{}, //合并單元格 
  11.         "rowlen":{}, //表格行高 
  12.         "columnlen":{}, //表格列寬 
  13.         "rowhidden":{}, //隱藏行 
  14.         "colhidden":{}, //隱藏列 
  15.         "borderInfo":{}, //邊框 
  16.     }, 
  17.     "celldata": [], //初始化使用的單元格數(shù)據(jù) 
  18.     "data": [], //更新和存儲(chǔ)使用的單元格數(shù)據(jù) 
  19.     "scrollLeft"0//左右滾動(dòng)條位置 
  20.     "scrollTop"315//上下滾動(dòng)條位置 
  21.     "luckysheet_select_save": [], //選中的區(qū)域 
  22.     "luckysheet_conditionformat_save": {},//條件格式 
  23.     "calcChain": [],//公式鏈 
  24.     "isPivotTable":false,//是否數(shù)據(jù)透視表 
  25.     "pivotTable":{},//數(shù)據(jù)透視表設(shè)置 
  26.     "filter_select": {},//篩選范圍 
  27.     "filter"null,//篩選配置 
  28.     "luckysheet_alternateformat_save": [], //交替顏色 
  29.     "luckysheet_alternateformat_save_modelCustom": [], //自定義交替顏色     
  30.     "freezen": {}, //凍結(jié)行列 
  31.     "chart": [], //圖表配置 
  32.     "visibledatarow": [], //所有行的位置 
  33.     "visibledatacolumn": [], //所有列的位置 
  34.     "ch_width"2322//工作表區(qū)域的寬度 
  35.     "rh_height"949//工作表區(qū)域的高度 
  36.     "load""1"//已加載過此sheet的標(biāo)識(shí) 

在chrome的console中查看 luckysheet.getluckysheetfile() 可以看到完整設(shè)置 [{shee1}, {sheet2}, {sheet3}]

使用方法

第一步,引入依賴,有2種方式:

CDN

  1. <link rel='stylesheet' href='https://cdn.jsdelivr.net/npm/luckysheet/dist/plugins/css/pluginsCss.css' /> 
  2.  
  3. <link rel='stylesheet' href='https://cdn.jsdelivr.net/npm/luckysheet/dist/plugins/plugins.css' /> 
  4.  
  5. <link rel='stylesheet' href='https://cdn.jsdelivr.net/npm/luckysheet/dist/css/luckysheet.css' /> 
  6.  
  7. <script src="https://cdn.jsdelivr.net/npm/luckysheet/dist/plugins/js/plugin.js"></script> 
  8.  
  9. <script src="https://cdn.jsdelivr.net/npm/luckysheet/dist/luckysheet.umd.js"></script> 

注意,https://cdn.jsdelivr.net/npm/luckysheet/dist/luckysheet.umd.js這個(gè)路徑會(huì)拉取到最新的luckysheet代碼,想要指定luckysheet版本,請(qǐng)?jiān)趌uckysheet后面加上版本號(hào),如:https://cdn.jsdelivr.net/npm/luckysheet@2.0.0/dist/luckysheet.umd.js

如果不方便訪問 jsdelivr.net,還可以采用本地方式引入

本地引入

npm run build后dist文件夾下的所有文件復(fù)制到項(xiàng)目目錄,然后通過相對(duì)路徑引入

  1. <link rel='stylesheet' href='./plugins/css/pluginsCss.css' /> 
  2.  
  3. <link rel='stylesheet' href='./plugins/plugins.css' /> 
  4.  
  5. <link rel='stylesheet' href='./css/luckysheet.css' /> 
  6.  
  7. <script src="./plugins/js/plugin.js"></script> 
  8.  
  9. <script src="./luckysheet.umd.js"></script> 

第二步,指定一個(gè)表格容器

  1. <div id="luckysheet" style="margin:0px;padding:0px;position:absolute;width:100%;height:100%;left: 0px;top: 0px;"></div> 

第三步,創(chuàng)建表格

  1. <script> 
  2.  
  3. $(function () { 
  4.  
  5. //配置項(xiàng) 
  6.  
  7. var options = { 
  8.  
  9. container: 'luckysheet' //luckysheet為容器id 
  10.  
  11.  
  12. luckysheet.create(options) 
  13.  
  14. }) 
  15.  
  16. </script> 

其實(shí)LuckysheetDocs的使用方式和Excel差別并不大,就連快捷鍵也是一樣的:

最后附上在線DEMO體驗(yàn):

 

 

責(zé)任編輯:張燕妮 來源: 開源最前線
相關(guān)推薦

2020-10-18 07:49:40

開源在線表格Excel前端表格庫(kù)

2021-01-13 11:13:46

ExcelPandas代碼

2016-08-04 11:15:24

GitHubMySQLSchema

2015-01-22 16:34:54

Github國(guó)產(chǎn)開源項(xiàng)目

2021-08-19 15:14:29

程序員電子表格Airtable

2020-06-12 14:40:45

開源技術(shù) 翻譯

2023-09-14 07:25:07

自主指令集核心

2021-04-15 22:17:16

PythonExcel代碼

2020-10-29 10:44:59

斗魚騰訊虎牙

2021-05-11 06:02:25

開源GitHub 國(guó)產(chǎn)開源軟件

2021-01-21 07:16:03

RocketMQKafka中間件

2022-01-04 10:51:11

工具開源PDF

2013-08-09 10:41:58

2021-07-06 09:28:35

GitHub開發(fā)者開源

2025-04-08 04:20:00

2014-04-02 09:48:20

金蝶中間件

2020-12-29 10:52:20

開源技術(shù) 軟件

2025-02-08 11:30:00

開發(fā)編程AI
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)