由于该编辑器升级到了5.0版本,会导致下文中的某些文件找不到的情况,但是封装思路是相同的,如需继续使用请使用下面的版本再次尝试
“@tinymce/tinymce-vue”: “^1.1.0”
“tinymce”: “^4.8.5”
vue cli 3 + tinymce5.0版本整合参考:点击前往
最近再弄一个后台管理系统,挑选了不少的编辑器,最终选择了tinymce,UI精美,功能模块多,可按需加载配置
来一张tinymce官网的完整功能的图(没梯子可能访问速度有点慢…)
下面开始工作:
插件安装
tinymce官方提供了一个vue的组件tinymce-vue
如果有注册或购买过服务的话,直接通过组件配置api-key直接使用,像我这种懒的注册或者购买的直接下载tinymce,自力更生
安装tinymce-vue
npm install @tinymce/tinymce-vue -S
下载tinymce
npm install tinymce -S
下载的时候可以先在static下面建个目录tinymce,下载tinymce完成后在node_modules 中找到 tinymce/skins目录,将其复制到static\tinymce目录下面,
下载中文语言包
tinymce提供了很多的语言包,这里我们下载中文语言包,
下载完成后将其解压到static\tinymce目录下面,最终目录结构形式如下
初始化
引入基本文件
import tinymce from 'tinymce/tinymce'
import Editor from '@tinymce/tinymce-vue'
import 'tinymce/themes/modern/theme'
components中注册tinymce-vue才能使用
<editor id="tinymce" v-model="value" :init="init"></editor>
初始化配置项,具体参考官网文档,这里说几个重要的
init: {
language_url: '/static/tinymce/langs/zh_CN.js',//语言包的路径
language: 'zh_CN',//语言
skin_url: '/static/tinymce/skins/lightgray',//skin路径
height: 300,//编辑器高度
branding: false,//是否禁用“Powered by TinyMCE”
menubar: false,//顶部菜单栏显示
}
扩展插件
默认的编辑器只有基本功能,如果还需要上传图片,插入表格之类的功能就需要添加插件
如添加上传图片和插入表格的插件