原創(chuàng)|其它|編輯:陳津勇|2019-10-11 16:48:39.920|閱讀 483 次
概述:SpreadJS——一個賦能開發(fā)者的純前端表格控件,可以幫助開發(fā)人員專注于產(chǎn)品的業(yè)務(wù)邏輯,而不用機械式的通過編碼實現(xiàn)數(shù)據(jù)基本處理。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
一般來說,企業(yè)的IT部門負責整個企業(yè)業(yè)務(wù)應(yīng)用程序的開發(fā)和部署。而每一個新的應(yīng)用程序及系統(tǒng)的改動,會收到來自各個部門的各種要求,體量不大的IT部門有時候并不能很好、很及時地滿足這些需求。
最終就會形成IT部門難以跟上企業(yè)的業(yè)務(wù),同時身上積壓著超出他們承受范圍的工作等惡性循環(huán)。而業(yè)務(wù)部門等不及就開始自己著手解決問題,他們購買未經(jīng)批準的現(xiàn)成應(yīng)用程序或者自行制定解決方案。往往也不符合企業(yè)的IT標準,并且經(jīng)常在組織間或在無法協(xié)同的系統(tǒng)間產(chǎn)生沖突,無形中成為桎梏企業(yè)業(yè)務(wù)的重大問題。
在這種混亂中,一種減少重復(fù)工作,提升效率的工具——控件,悄然興起。
創(chuàng)建控件的最大意義在于封裝重復(fù)的工作,其次是可以擴充現(xiàn)有控件的功能。
通俗的來說,控件就如同帶有魔法的積木一樣,只需要拿起來堆堆疊疊,就可以做出一輛小車、幾棵植物,建起一座城池。但它又與普通堆積木不同,用積木堆的小汽車,再使用時還需要重復(fù)勞動,而控件則可以隨時隨地的初始化并可以通過接收參數(shù)改變自身屬性(顏色,尺寸等)來使用。
這些控件能給項目開發(fā)和軟件交付帶來極大的便利。
而我們這次的故事的主角——SpreadJS,就是一個賦能開發(fā)者的純前端表格控件。SpreadJS可以幫助開發(fā)人員專注于產(chǎn)品的業(yè)務(wù)邏輯,而不用機械式的通過編碼實現(xiàn)數(shù)據(jù)基本處理,如增刪改查等。
SpreadJS是一款基于HTML5的純前端電子表格控件,以“高速低耗、高度類似Excel、可無限擴展”為產(chǎn)品特色,提供移動跨平臺和瀏覽器支持,同時滿足.NET、Java、App等應(yīng)用程序中的WebExcel組件開發(fā)、數(shù)據(jù)填報、在線文檔、圖表公式聯(lián)動、類Excel UI設(shè)計等業(yè)務(wù)場景,為用戶帶來親切的Excel使用體驗。
小小的控件,大大的能量
設(shè)計控件是一項繁重的工作。比如它的特性之一兼容Excel就有很大的難度。
兼容Excel,也可以稱之為微軟兼容性。
簡單來說就是,如果我們開發(fā)別的軟件,只要把功能實現(xiàn)就好,不論中間怎么樣。比如播放視頻的軟件只要能播視頻就好,聽音樂的能聽音樂就好。但這個純前端的取代Excel的產(chǎn)品必須能夠正確讀取微軟的文檔。因為微軟Office的市場占有率太高,如果不能兼容,意味著別人發(fā)來的文檔你打不開。想象一下,你以前的文檔,你同事、合作伙伴發(fā)來的文檔,你都打不開。如果他們要看你的文檔,得先裝對應(yīng)的軟件。這就好像你在微信之外,用另一個全新的聊天工具,你要找朋友聊天,得先讓他們安裝一個新的聊天工具。
而要實現(xiàn)這樣的兼容性,就需要與原有設(shè)計(文件格式設(shè)計會隱含著原來作者對程序Model的設(shè)計)兼容,而微軟的Office并不是透明的。為了這個兼容,開發(fā)者需要在黑盒模式下各種大膽猜測小心調(diào)試,還要承擔“只要有問題就是你的問題”的巨大壓力。同時,背負上了帶著別人的歷史追趕別人進步的重任。
而在目前Excel已有的480多種函數(shù)公式中,SpreadJS已經(jīng)支持450種以上。
具體講講幾個可以幫助開發(fā)人員在自己的系統(tǒng)中實現(xiàn)Excel的功能:
貼近Excel的應(yīng)用
其實,上面所講的Excel兼容性就是SpreadJS最令筆者驚喜的特性之一。因為很多企業(yè)的歷史數(shù)據(jù)等都是留存在Excel格式的文件中的,這種能夠直接導(dǎo)入和導(dǎo)出Excel文件的特點極大的方便了企業(yè)對留存數(shù)據(jù)的存儲、整理和應(yīng)用。
而且,作為控件,企業(yè)完全可以用SpreadJS完美嵌入到自己的OA、賬務(wù)、生產(chǎn)等系統(tǒng)中使用,輕松的將數(shù)據(jù)導(dǎo)出為指定模板的Excel文件,進行復(fù)用。在筆者的試用中,不論從頁面還是功能都與Excel幾乎一致,要不是在Web端,筆者甚至以為自己在使用Excel。這將極大的減少企業(yè)員工的學(xué)習(xí)成本,極快上手。
而對于開發(fā)人員來說,在幫助企業(yè)進行業(yè)務(wù)應(yīng)用設(shè)計時,通過SpreadJS提供的類似Excel模板設(shè)計器,可以輕松的設(shè)計模板,節(jié)約應(yīng)用程序開發(fā)所需的時間和精力。僅用不超過100行代碼,就可以實現(xiàn)Excel的全部功能,各行業(yè)人員均可通過 Excel 軟件制作表格,然后輕松導(dǎo)入SpreadJS中,提升模板復(fù)用性。
“公司的項目管理系統(tǒng)需要使用SpreadJS做一個通用的Excel模板設(shè)計器,將此前自定制的組件通過SpreadJS進行集成,用拖拽的方式在SpreadJS的表格編輯器界面進行展示和配置,以便生成一套能夠自行設(shè)計出數(shù)據(jù)填報、數(shù)據(jù)可視化甚至是BI的Excel 模板。”——天津卡達克數(shù)據(jù)有限公司
Form表單填報
填報就是提前設(shè)計好表單的樣式,在web端展示,分發(fā)給別人或者嵌入到別的軟件網(wǎng)頁,來收集數(shù)據(jù),方便存入(數(shù)據(jù))庫,就像注冊網(wǎng)站填入你的個人信息,發(fā)送到后臺,同步到數(shù)據(jù)庫。
SpreadJS內(nèi)置桌面端和Web端的在線表格編輯器,支持用戶填報模塊。通過SpreadJS內(nèi)置的多種單元格類型,如按鈕、單復(fù)選、下拉列表、單元格內(nèi)的公式引用、數(shù)據(jù)驗證等均能有效的完成表單相關(guān)功能。這種提前設(shè)計好報表樣式收集數(shù)據(jù)入庫,然后導(dǎo)出的方式,能省去很多工作量。
“SpreadJS表單控件主要應(yīng)用于本項目中各類工資表格的展示、編輯和查詢,最后用于匯總生成各類報表并進行展示。我們的體會是,使用SpreadJS我們可以輕松設(shè)計模板,節(jié)約應(yīng)用程序開發(fā)所需的時間和精力。無需編碼,財務(wù)、人事管理人員均可通過Excel軟件設(shè)計界面,設(shè)計計算公式,然后輕松導(dǎo)入設(shè)計器或SpreadJS中,就可實現(xiàn)模板重用。這大大減輕了工作強度,使得快速開發(fā)得以實現(xiàn)。SpreadJS加載速度快,對內(nèi)部管理系統(tǒng)無壓力。并且生成報表和網(wǎng)頁打印報表這些麻煩事兒,SpreadJS都很好的解決了!”——中國民用航空飛行學(xué)院
Gird表格數(shù)據(jù)處理
相比其他電子表格,SpreadJS提供更全面的內(nèi)置公式和自定義函數(shù),可針對大數(shù)據(jù)和復(fù)雜計算進行優(yōu)化,即可為復(fù)雜的公式增加計算能力,又不會過多地占用系統(tǒng)資源。
而且,在進行數(shù)據(jù)展示時,不論是自動排序、篩選、行表頭、列表頭、匯總、邊框和單元格樣式等功能,還是進行分組、查找、聚合、公式等操作,SpreadJS均可滿足。
“SpreadJS是一個基于HTML5技術(shù)的純JavaScript控件,不但提供了更高的渲染性能和更流暢的界面操作,還通過一個高效的數(shù)據(jù)模型來快速操作數(shù)據(jù),使得載入和操作超百萬行數(shù)據(jù)變得更為方便且快捷。”——中國能建安徽電建二公司
數(shù)據(jù)可視化
在企業(yè)進行數(shù)據(jù)資產(chǎn)管理時,很常見的一個任務(wù)就是數(shù)據(jù)可視化,這樣才能獲得關(guān)于數(shù)據(jù)的形象化展示。而SpreadJS除已完全兼容Excel的92種圖表外,還具備了更全面的商業(yè)智能分析(數(shù)據(jù)透視表)和更易于開發(fā)使用的自定義擴展能力,并實現(xiàn)了公式的完全自定義。同時已經(jīng)實現(xiàn)了諸多類 Excel 的內(nèi)置形狀,如線條、矩形、箭頭、流程圖,可以為前端界面添加更多的細節(jié)展現(xiàn)和可視化效果,并且這些內(nèi)置的形狀都可以無縫的進行導(dǎo)入和導(dǎo)出。而即將在十月份推出的升級版新功能中,也將新增形狀(Shape)、富文本、二維碼以及多個新圖表類型。
“通過SpreadJS‘可嵌入用戶操作系統(tǒng),開發(fā)在線Excel’的產(chǎn)品概念,以及葡萄城純前端數(shù)據(jù)處理技術(shù)在各領(lǐng)域應(yīng)用中取得的核心成果,我們的技術(shù)專家無一不對葡萄城SpreadJS純前端表格控件新穎的設(shè)計理念和可靠的產(chǎn)品性能表示贊嘆。”——北京神舟航天軟件技術(shù)有限公司
SpreadJS高度類似Excel的在線表格編輯器界面。
對于代碼能力不強的開發(fā)者來說,僅通過簡單拖拽點擊,就可以利用SpreadJS方便的實現(xiàn)表格模板設(shè)計、數(shù)據(jù)填報、數(shù)據(jù)統(tǒng)計、數(shù)據(jù)管理、數(shù)據(jù)呈現(xiàn)等功能;而對于代碼能力較強的開發(fā)者來說,SpreadJS提供源代碼,方便其進行自由定制和任意擴展。
這也是SpreadJS獲得了眾多客戶認可的原因。
比如華為2012實驗室。點擊查看《華為2012實驗室與SpreadJS純前端電子表格控件背后的故事》
*想要獲得 SpreadJS 更多資源或正版授權(quán)的朋友,可以咨詢了解哦~
慧都網(wǎng)·1024程序員節(jié),DevExpress、MyEclipse、Axure RP、Aspose、FastReport等產(chǎn)品限時放“價”,給你專屬寵愛!點擊下方圖片查看活動詳情↓↓↓
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn