vue3安装tinymce富文本编辑器
1、如题
tinymce富文本是一款超级强大的国外开发富文本编辑器,网上关于其的教程有很多,但是都有一个缺点那就是没有区分版本,导致很多配置无法生效。
下面针对vue3的安装与使用做一个全面的介绍:
2、安装
yarn add tinymce yarn add @tinymce/tinymce-vue |
这是我安装的最新版本:
"dependencies": { "@tinymce/tinymce-vue": "^5.1.1", "tinymce": "^6.8.1", }, |
3、安装中文包
这点基本上按照教程来即
下载中文包 地址 tinymce语言包下载这里需要注意,请下拉到最后,有个蓝色的按钮写着TinyMCE 5 All Languages,下载这个,而不是上面的Chinese Simplified那个包
在项目public文件夹下新建tinymce文件夹,将下载的汉化包解压到此文件夹
然后在node_modules/tinymce中找到skins文件夹,也复制到public/tinymce里
一共有三个文件夹
4、 直接新建1个tinymceEditor.vue组件
这里面容易搞错的是toolbar里面的内容
toolbar: { type: [String, Array], default: " fontsize fontfamily styles | bold italic | forecolor backcolor | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | image | lists link table code", } |
由于tinymce不断更新,新版本的工具栏属性会不断变化,网上的大部分没有标明版本,可能有些属性已经修改,导致配置失效 。在文章结尾有tinymce官网,可以在需要的时候进入官网查看。
另外,关于自定义字体单位和字体大小需要注意,老版本的可能是fontsize_formats。默认字体大小单位为pt,不符合国内使用习惯
font_size_formats: "11px 12px 14px 16px 18px 24px 36px 48px 64px 72px", //文字大小 font_size_input_default_unit: "px", |
在插件这里,根据自己需要引用。如果没有引用插件,工具栏里面的按钮对应引用也不会生效。具体更多插件可以查看文章结尾处的官网。
plugins: { type: [String, Array], default: "lists table link image searchreplace", }, |
全部代码:
<template> import tinymce from "tinymce/tinymce"; import "tinymce/icons/default/icons"; const emits = defineEmits(["getContent"]); let config = { // Provide image and alt text for the image dialog // Provide alternative source and posted for the media dialog |
5、使用
getContent可以监听内容变化,value可以绑定内容
<tinymceEditor :value="course_content" @getContent="getContent"></tinymceEditor> |
6、官网
tinymce官网官网中有详细的工具栏按钮配置,还有很多待引用的插件,如link image等,根据自己需要引用即可