不論是網站內容管理系統、網誌、論壇、電子郵件,通常會有讓使用者填寫文字內容的編輯器,使用者可以使用這簡易的編輯器來達到想要呈現的畫面,編輯完成後就可以渲染出 Html 在前台,本篇就要來介紹這強大的 CKEditor5 文本編輯器!
這邊會先分為兩個部分來操作:
- 在線設定編譯 CKEditor 插件
- 在 Vue 專案加入 CKEditor
在線設定編譯 CKEditor 插件
首先,先進入 CKEditor5 官網,並依下列步驟進行操作
1. Type-選擇類型
CKEditor5 提供多種類型,這邊選擇最常用的 Classic 經典模式
2. Plugin-選擇插件
根據要使用的插件加入,注意裡面有 PREMIUM 標籤是要收費的,這邊先把所有免費的插件都全 Add
3. Toolbar-選擇工具列、排序
根據想預設顯示的工具列去做顯示與排序
4. Language-選擇語言
依專案想要顯示的語言去做選擇,我這邊選擇英語 English
5. Download-編譯
都設定好後,點擊 Start 開始進行 build 編譯
差不多過一分鐘後就會出現 Download your custom CKEditor 5 build 的按鈕
點擊後會得到一個壓縮檔,解壓縮後放到 Vue 專案,接下來就是進行專案的部分
在 Vue 專案加入 CKEditor
1. 安裝 ckeditor5-vue
1 | # npm |
2. 安裝剛剛自定義的 ckeditor
1 | # npm |
安裝好後可以在 package.json 看到
3. 引入組件,全域引入或組件引入
依專案使用程度來選擇全域或組件引入,請擇一使用
如多頁面都會使用到可使用全域引入
少數頁面會使用可使用組件引入
全域引入
main.js
1 | import { createApp } from 'vue' |
組件引入
1 | import CKEditor from "@ckeditor/ckeditor5-vue"; |
4. 加入 ckeditor 在頁面中
1 | <script setup> |
開啟畫面看,就會出現編輯器了!
5. config 設定
我們可以對 CKEditor5 再做一些設定,像是 placeholder、工具列等等
當然,如果你想使用預設,可以跳過這一步
1 | const ckeditorState = reactive({ |
- toolbar:工具列的顯示與排序
- htmlSupport:html 支援
- removePlugins:不使用的插件
- poweredBy:免費版的 CKEditor 預設會出現版權的標誌在右下角,可在 poweredBy 設定位置
更多的設定可參考 CKEditor5 文件
最後就大功告成囉!!🎉
結語
之前也有用過 Quill 來做編輯器,但在渲染 HTML 時看起來有些落差,因為 Quill 使用自己的 Delta 格式來表示文字樣式,而不是使用傳統的 HTML 標籤,不曉得這部分有沒有解,不過之後改用 CKEditor5 就解決了這個問題,以後應該會直接選擇 CKEditor5 來做編輯器了!少走一點冤枉路 😄
Reference
CKEditor
vue3安装在线构建ckeditor5教程
CKEditor5+vue3使用以及如何添加新工具栏,自定义设置字体fontFamily
🚀實體工作坊分享
玩轉 Web頁面的前端技術(HTML/CSS/JS) 一日體驗課
最近時賦學苑開了實體體驗課,即使你對程式碼沒有概念也能上手!Lala 會帶你一起做出一個個人品牌形象網站,帶你快速了解前端的開發流程,快跟我們一起玩轉 Web 吧!🚀線上課程分享
線上課程可以加速學習的時間,省去了不少看文件的時間XD,以下是我推薦的一些課程想學習更多關於前後端的線上課程,可以參考看看。
Hahow
Hahow 有各式各樣類型的課程,而且是無限次數觀看,對學生或上班族而言,不用擔心被時間綁住六角學院
如果你是初學者,非常推薦六角學院哦!剛開始轉職也是上了六角的課,非常的淺顯易懂,最重要的是,隨時還有線上的助教幫你解決問題!
Udemy
Udemy 裡的課程非常的多,品質普遍不錯,且價格都滿實惠的,CP值很高!也是很多工程師推薦的線上課程網站。