项目使用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