Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
線文檔,顧名思義就是通過在線的方式對文檔進行操作,實現如數據填報、數據計算、可視化、在線導入導出 Excel 文件、自定義系統外觀、工具欄、在網頁內滿足單人或多人編輯并將文件上傳至服務端保存的功能。
國內外常見的在線文檔,包括:微軟Office Online、Google文檔、石墨文檔、騰訊文檔、飛書、語雀等。
通過對比這些軟件產品,可以將它們的主要功能點,概括為三個層面:數據填報、協同編輯和類Excel的呈現方式。
可以說,只要滿足了上述需求,就可以開發出一款優秀的在線文檔。
而SpreadJS純前端表格控件,恰好滿足。
下面,我們就通過Spring Boot + Vue.js的前后分離開發技術,演示如何借助 SpreadJS 搭建一款簡單的在線文檔系統。
在線文檔系統示例
該系統集成了SpreadJS表格控件,目前已經實現了在線讀取、編輯Excel 文檔的功能,文末提供了示例代碼下載,大家可以按照 Readme文檔中的步驟運行。
PS:歡迎大家前往SpreadJS 產品官網,了解并學習這款純前端表格組件,以實現更多在線文檔的功能。
如下是系統運行截圖。
進入頁面(File List的展示文件均為服務器上的文件):
單擊 Excel文件,右側會顯示該文件的詳細信息:
雙擊文件夾:
點擊某個 Excel文件,打開編輯文件的彈框:
在線對Excel文件進行修改、刪除:
技術棧
關鍵步驟
1、 實現該系統的相關依賴包都寫在package.json里,執行命令 npm install 即可安裝,主要有:
"@grapecity/spread-sheets": "^13.0.5",
"@grapecity/spread-sheets-resources-zh": "^13.0.5",
"@grapecity/spread-sheets-vue": "^13.0.5",
"@grapecity/spread-sheets-pdf": "^13.0.5",
"@grapecity/spread-sheets-print": "^13.0.5",
"@grapecity/spread-sheets-charts": "^13.0.5",
"@grapecity/spread-sheets-shapes": "^13.0.5",
2、 在SpreadJS.vue文件中引入 SpreadJS 相關安裝包:
import "@grapecity/spread-sheets-vue";
import * as GC from "@grapecity/spread-sheets";
import "@grapecity/spread-sheets-charts";
import "@grapecity/spread-sheets-shapes";
3、 在App.vue文件中引入 SpreadJS 的樣式文件、中文資源文件:
import '@grapecity/spread-sheets-resources-zh'
import '@grapecity/spread-sheets/styles/gc.spread.sheets.excel2016colorful.css'
4、 List.vue文件中是主要的頁面邏輯,雙擊文件時彈出彈框,彈框中引入了自定義的組件:
<MySpreadJS :mySpread="mySpread" :filePath="filePath" @done="childDone" :closeSpread='closeSpread'>
</MySpreadJS>
5、 mySpread變量中是從后臺返回的文件流,傳給MySpreadJS組件,子組件接收到數據后,調用excelIO.open方法打開Excel 文件流,
spreadInitHandle: function(spread) {
this.spread=spread;
let self=this;
let excelIO=new ExcelIO.IO();
excelIO.open(
this.spreadblob as Blob,
function(json) {
let workbookObj=json;
self.spread.fromJSON(workbookObj);
},
function(e) {
alert(e.errorMessage);
});
},
6、 在線編輯Excel文件,并保存。借助excelIO.save方法可以將修改后的文件流傳給后臺,實現文件的修改功能:
excelIO.save(
curjson,
function(fileblob) {
let formData=new FormData();
formData.append("filePath", self.filePath);
formData.append("type", "update");
formData.append("excelFile", fileblob);
httpUtils.post("/filemanager/savefile", formData).then(response=> {
self.$message({
type: "success",
message: "保存成功!"
});
self.$emit("done");
});},
function(e) {
//process error
console.log(e);
}
);
后臺接口介紹
獲取某路徑下的文件集合:getfolder
獲取Excel文件內容:getFile
保存文件:savefile
刪除文件:deletefile
以上就是Vue+SpringBoot+SpreadJS 實現的一個簡單的在線文檔,如需了解詳細的實現步驟。
SpreadJS除提供示例中在線讀取、編輯Excel 文檔的功能外,還提供了Web Excel 組件開發、數據填報、Excel 類報表設計等功能。除此之外,您還可通過調用API對SpreadJS進一步擴展,滿足協同編輯、多級上報、填報暫存等更多場景的業務需要,歡迎下載試用。
今天的內容就到這了,不要忘了在評論區留下的意見和建議!
點擊“了解更多”即可立即免費體驗!
見即所得,不是很熟悉這個詞嗎?所見即所得代表什么,你看到的就是你得到這通常意味著一個編輯應用程序使用,以說明正在編輯的內容將完全一樣的最終結果。與其他文本編輯器相比,“所見即所得” 文本編輯器非常友好。
它指已操作的軟件或應用程序所擁有的功能,以及它們具有的許多其他功能。在使用中,此文本編輯器不需要像其他文本編輯器中那樣編寫語法,因為它配備了圖標,只需要單擊將要使用并自動格式化的圖標之一即可。
此外,該文本編輯器還具有其他優勢,例如能夠顯示一頁文本,與圖形,電子表格集成,在一個文檔中顯示照片,自動更正,超媒體,超文本等等。下面是一些用于網頁的所見即所得文本編輯器:
CKEditor是一個HTML 文本編輯器,用于并旨在幫助您創建和管理內容布局。該文本編輯器中有許多完整的功能,如可以從Microsoft Word移動,還有額外的部件或工具,能夠拖動和下降圖片和上傳文件,以及更多。
TinyMCE是一個基于Javascript的獨立Web平臺,該文本編輯器根據LGPL許可作為開源應用程序發布。該文本編輯器旨在與JavaScript 庫(例如React,Vue.js,AngularJS)和內容管理系統(例如Joomla和WordPress)輕松集成。另外,一個文本編輯器它還具有許多完整功能,包括4個軟件包,其中Community是免費的,Premium,Pro和Enterprice是收費的。相對而言Community實際上非常完整,但是沒有上傳圖像的功能。
Summernote是一個非常簡單且免費的文本編輯器。該文本編輯器使用base64編碼,因此它不僅可以用于編輯文本,而且還可以直接上傳圖像,而無需進行任何圖像處理。該文本編輯器由jQuery和Bootstrap組成,這是一個簡單的UI,因此你可以更輕松地自定義外觀或添加和刪除工具欄。
Froala是HTML WYSIWYG 編輯器,它易于集成且易于使用,而無需鍵入大量代碼。此插件需要jQuery 1.11.0或更高版本以及Font Awesome 4.4.0。該插件提供了用于PHP,Node.JS,.NET,Java和Python的服務器端SDK。該插件有4種許可,分別是:單個網站許可,開發者許可,商業許可和OEM許可。這個插件還有一個帶有多個開發框架的連接器,例如:CakePHP,Joomla,Symfony,Yii,Django,Ruby on Rails,AngularJS,Meteor。
Redactor是一個內容編輯器,可提供流暢,整潔,靈活的設計,并為其用戶提供無限的支持。該內容編輯器與MODX緊密集成,提供簡單的用戶界面,并配有清晰易懂的圖標,調制解調器和功能。可以根據需要激活或停用可用的高級功能,以便它可以控制用戶活動。
Quilljs是100%免費的文本編輯器,它看起來簡單而優雅。該文本編輯器提供了一種配置,你可以在其中自定義外觀以及添加和刪除工具欄。該文本編輯器也受API驅動,因此可以使用JSON作為其輸入和輸出來始終如一地確定性地工作。此外,此文本編輯器是跨平臺的,因此它支持臺式機,平板電腦或移動設備上的所有現代瀏覽器。
自學的話,首先要理解html的作用。html,hypertext markup language,超文本標記語言,用來展示網頁中的內容。同時 HTML 也是我們學習前端開發的基礎。隨著 web 前端技術的飛速發展,HTML 和 CSS 也成為了編程者的必備技能。而要想做一個網頁光會這一門語言是不夠的,還需要自學css,JavaScript。其中html和css較JavaScript容易。
可以這樣理解,HTML,是一個文件類型,可以被瀏覽器解析。如果不使用瀏覽器打開,我們看到的將是一行行代碼,在瀏覽器中打開以后呢,就會出現一些靜態效果了。下面介紹一下初步的一些HTML語法知識。
HTML 標簽非常注重語義化,很多標簽都是通俗易懂的,大大降低了我們學習的難度。這套 HTML 教程更是為了避免初學者走太多的彎路,指出了許多其它 HTML 教程中沒有提到的學習誤區,并且給初學者提供了一個具體的學習思路,除了注重 HTML 知識點的講解,更加注重 web 前端開發技巧和思維。幫助大家快速入門,其中包含大量的實踐經驗,將知識系統化,濃縮為精華,用通俗易懂的語言直指網頁設計初學者的痛點。
學海無涯,苦做舟,學習如同修行,只有潛心才可以領悟真諦。HTML 中的每一個小知識點都可以讓頁面發生不同的變化,現在就讓我們行動起來,跟著 HTML 教程的步伐,讓我們一起走進 HTML 的世界。
超級文本標記語言文檔制作不是很復雜,但功能強大,支持不同數據格式的文件鑲入,這也是萬維網(WWW)盛行的原因之一,其主要特點如下:
● 簡易性:超級文本標記語言版本升級采用超集方式,從而更加靈活方便。
● 可擴展性:超級文本標記語言的廣泛應用帶來了加強功能,增加標識符等要求,超級文本標記語言采取子類元素的方式,為系統擴展帶來保證。
● 平臺無關性:雖然個人計算機大行其道,但使用MAC等其他機器的大有人在,超級文本標記語言可以使用在廣泛的平臺上,這也是萬維網(WWW)盛行的另一個原因。
● 通用性:另外,HTML是網絡的通用語言,一種簡單、通用的全置標記語言。它允許網頁制作人建立文本與圖片相結合的復雜頁面,這些頁面可以被網上任何其他人瀏覽到,無論使用的是什么類型的電腦或瀏覽器。
B(Browser)/S(Server)架構方向,也是我們以后主攻方向
我們以后主要為企業內部提供解決方案,例如:企業內部的辦公系統、供應鏈管理系統、客戶關系管理系統等,而這些系統通常對界面的表現要求較低,對業務處理和數據處理要求較高,并且要求降低升級維護的成本,B/S架構可以更好的被企業接受,所以我們以后主要的方向是開發基于B/S架構的應用,B/S架構的開發通常又被叫做Web開發,Web開發通常包括Browser瀏覽器端的開發以及Server服務器端的開發。
雖然我們是學習Java后臺服務器編程,但是前端頁面編寫要了解,能看懂,簡單的頁面效果可以實現即可;
創建一個以 .html或 .htm 結尾的文件,用文本編輯器打開就可以開發
用瀏覽器打開以.html或.htm的文件就可以自上而下解析執行,不需要編譯
● <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN""http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
● DTD文件的作用
● 幫助你編寫合法的代碼
● 它讓瀏覽器正確地顯示器代碼,或者說DTD只是寫給檢查器看的
HTML規范是由w3c負責制定的,W3C是世界萬維網聯盟(World Wide Web:www)
FireFox、Google、IE
<>表示開始標記
</>表示結束標記
<html>開始標簽
</html>結束標簽
html為元素
HTML 元素指的是從開始標簽(start tag)到結束標簽(end tag)的所有代碼。
● HTML 元素以開始標簽起始
● HTML 元素以結束標簽終止
● 元素的內容是開始標簽與結束標簽之間的內容
● 某些 HTML 元素具有空內容(empty content)
● 空元素在開始標簽中進行關閉(以開始標簽的結束而結束)
● 大多數 HTML 元素可擁有屬性
大多數 HTML 元素可以嵌套(可以包含其他 HTML 元素)。
HTML 文檔由嵌套的 HTML 元素構成。
上面的例子包含三個 HTML 元素。
● <p> 元素:
這個 <p> 元素定義了 HTML 文檔中的一個段落。
這個元素擁有一個開始標簽 <p>,以及一個結束標簽 </p>。
元素內容是:This is my first paragraph。
● <body> 元素:
<body> 元素定義了 HTML 文檔的主體。
這個元素擁有一個開始標簽 <body>,以及一個結束標簽 </body>。
元素內容是另一個 HTML 元素(p 元素)。
這個元素擁有一個開始標簽 <html>,以及一個結束標簽 </html>
元素內容是另一個 HTML 元素(body 元素)。
即使您忘記了使用結束標簽,大多數瀏覽器也會正確地顯示 HTML:
上面的例子在大多數瀏覽器中都沒問題,但不要依賴這種做法。忘記使用結束標簽會產生不可預料的結果或錯誤。
注釋:未來的 HTML 版本不允許省略結束標簽。
有一些元素必須使用單個標簽表示。這些被稱為空元素。
一個這樣的元素是 hr 。
hr 是一個分組元素,用于表示一個段落級別的內容。
您可以使用以下兩種方式之一使用void元素 - 第一種方法是僅指定開始標記,如以下代碼所示。
瀏覽器知道hr是一個void元素,因此不希望看到結束標記。
您可以使元素與空元素一致,如下面的代碼所示。
注釋是關于HTML元素的有用信息。注釋使HTML文檔更易讀和可理解。
HTML中的注釋以標簽<!-- 開頭,并以 --> 結尾。
瀏覽器將忽略您在這些標記中放置的任何內容。
以下代碼具有HTML注釋。
超文本標記語言(外國語簡稱:HTML)標記標簽通常被稱為HTML標簽,HTML標簽是HTML語言中最基本的單位,HTML標簽是HTML(標準通用標記語言下的一個應用)最重要的組成部分。
HTML標簽的大小寫無關的,例如“主體”<body>跟<BODY>表示的意思是一樣的,推薦使用小寫。
實例
<html> 標簽告知瀏覽器這是一個 HTML 文檔。
<html> 標簽是 HTML 文檔中最外層的元素。
<html> 標簽是所有其他 HTML 元素(除了 <!DOCTYPE> 標簽)的容器。
所有瀏覽器都支持 <html> 標簽。
段落標簽:<p></p>
定義:可以把 HTML 文檔分割為若干段落
標題字:<h1></h1>至<h6></h6>
標題是通過 <h1> - <h6> 等標簽進行定義的
<h1>定義最大標簽,<h6>定義最小標簽
換行:<br>
定義:<br> 可插入一個簡單的換行符
<br> 標簽是空標簽,它沒有結束標簽
注釋:<!-- 這是HTML注釋 -->
水平線:<hr/>
預留格式<pre>內容</pre>
定義:頁面中輸入什么樣式就顯示什么樣式
實例:< >
搭配視頻效果更佳~~
https://www.ixigua.com/690746767030039398
*請認真填寫需求信息,我們會在24小時內與您取得聯系。