項目使用vue-cli 3.x版本,tinymce5vue
注:只安裝tinymce-vue不能夠,還需安裝tinymce,不然會報錯node
npm install tinymce npm install @tinymce/tinymce-vue import tinymce from 'tinymce/tinymce' import Editor from '@tinymce/tinymce-vue'
按示例初始化發現編輯器不顯示,報「theme.js:1 Uncaught SyntaxError: Unexpected token <
」這個錯,須要手動引入tinymce主題,在init({})方法里加theme: 'silver',
沒用。git
import 'tinymce/themes/silver/theme'
不報錯了可是編輯器仍是不顯示,繼續研究,發現還須要定義「skin_url」,在init({})里加skin: "oxide"
沒用。先在public目錄下新建一個文件夾命名爲tinymce,而後在node_modules裏找到tinymce的skin包,複製到public/tinymce裏,在建立tinymce時的init({})裏添加下面這行代碼:github
skin_url: '/tinymce/skins/ui/oxide',
一些經常使用的配置屬性vue-cli
browser_spellcheck: true, // 拼寫檢查 branding: false, // 去水印 elementpath: false, //禁用編輯器底部的狀態欄 statusbar: false, // 隱藏編輯器底部的狀態欄 paste_data_images: true, // 容許粘貼圖像 menubar: false, // 隱藏最上方menu
pluginsnpm
使用某個插件須要先引入這個插件,例:編輯器
import 'tinymce/plugins/fullscreen' import 'tinymce/plugins/preview' plugins: 'fullscreen preview'
toolbaride
能夠使用「|」給工具欄分組,把某一類功能劃分紅一組,例:工具
toolbar: 'bold italic underline | alignleft aligncenter alignright'
將語言改成中文ui
步驟:
language_url: `/tinymce/langs/zh_CN.js`, language: 'zh_CN',
在tinymce5工具欄添加自定義功能按鈕
this.tinymceInit = { ... toolbar: 'imageUpload', setup: (editor) => { editor.ui.registry.addButton('imageUpload', { tooltip: '插入圖片', icon: 'image', onAction: () => { } }) } }
關於tinymce完整的例子在個人github項目裏https://github.com/Inspiration1/asteroid