wangEditor V4 發佈了

從 2020 年 5 月 開始着手作,6 月開始組建開源團隊,直到 10.1 假期以前,V4 終於能夠發佈了。歡迎你們去 官網 看看,也歡迎去 github 點個 star 。html

團隊做戰

團隊做戰,而再也不徹底依賴於我我的的精力,這是本次重構升級最大的一次改動 —— 雖然這從產品上暫時看不出來,但將來會體現的愈來愈明顯。git

在此次 V4 重構啓動以前,wangEditor 已經停更 2 年了。緣由就是以前我是我的維護的,徹底依賴於我我的的精力。我忙起來,天然也就停更了。github

此次 V4 重構以前,我並無貿然的本身作,而是深刻思考了這個問題。因此,我就開始招募成員,組建開源團隊,雖然一開始慢一點。typescript

V4 發佈以後的 bug 修復,新功能迭代,都會以團隊的形式持續穩定的進行。即使是我再忙起來了,也不會影響太多。markdown

PS:關於如何以團隊形式作開源項目,我這幾個月以來的總結,我會寫單獨寫一篇長文來詳細介紹。過兩天會發布出來。 (已寫完《【長文】wangEditor V4.0 探索以團隊的形式作開源項目》編輯器

使用 typescript 重構

項目直接從 0 開始,用 ts 重構。ts 的強類型,給代碼增長了不少穩定性。招募團隊成員時,要求會 ts ,也提升了招募的門檻,保證了團隊成員的技術能力。oop

新功能

相比 V3 版本,V4 增長了一些經常使用的新功能:post

  • 縮進
  • 行高
  • 全屏
  • 插入分割線
  • 代碼高亮
  • 拖拽修改圖片尺寸
  • 自定義擴展菜單

尚在調研和開發中的有:spa

  • 待辦事項
  • 數學公式
  • 格式刷
  • 上傳視頻
  • 查看源碼

其餘功能,你們能夠再給我提建議或者 issue 。設計

tooltip

V4 專門設計了 tooltip 機制,能夠經過簡單的代碼,定義編輯器區域的某個元素,點擊時顯示什麼菜單項。這個能力,也開放給了自定義擴展菜單。

操做穩定性

V4 對於一些複雜的但經常使用的操做,進行了從新討論和設計,增長了操做穩定性。如撤銷,粘貼。

撤銷是徹底本身實現的。原生的 document.execCommand('undo'),原生會和其餘 <input> 的撤銷有衝突。 本身實現撤銷,須要定義 undoStackredoStack 兩個棧,在 onchange 時記錄當前 html 並壓棧。相關源碼在這裏

粘貼文本時。會先將 html 內容,通過 htmlParser 過濾,篩選出能夠粘貼的 tag 和 attrs ,判斷是否保留 style 和 img ,最後再拼接 html ,粘貼到編輯器中。

自定義擴展菜單

V4 開始,用戶又能夠自定義擴展菜單了,文檔在這裏

擴展的菜單涵蓋了編輯器內的三種類型:Button DropList 和 Panel 。可使用 EventHooks 和 Tooltip 。即,目前編輯器全部的菜單能力,所有都開放給了用戶。

交流

以上方式,咱們都會及時反饋答覆。

相關文章
相關標籤/搜索