tinymce是一款综合口碑特别好、功能异常强大的富文本编辑器,在某些网站,甚至享有“宇宙最强富文本编辑器”的称号。那么,在Vue项目中如何集成呢?这并不困难,只需要参照官方教程即可。难点在于如何将默认的英文本地化为中文。

 本人参考了众多网络资料进行本地化,竟发现没有一篇文章能够完全走通,并且各个教程显得极其繁琐。因此重新参考官方教程,反复实践,终究得以攻克。最终的方案较为简洁,基于官方包较为可靠。现将配置的细节、一些关键的要点分享如下。

 本文使用的版本:tinymce-vue 3.0.1。该包是tinymce官方的开源项目,并在官网文档中提供了说明,因此完全是值得信赖的。

 与网络上的众多教程相比,本文的方案只需要安装tinymce-vue即可,无需额外安装tinymce

一、安装tinymce-vue

npm install @tinymce/tinymce-vue

二、引入tinymce-vue并注册为组件

import Editor from '@tinymce/tinymce-vue';
export default {
name: 'HelloWorld',
components: {
'tinymce-editor': Editor
},
}

三、使用组件

<tinymce-editor api-key="API_KEY"
:init="{plugins: 'wordcount'}"></tinymce-editor>

API_KEY是你向tinymce官网注册账号得到的,免费即可获得,若没有传入有效的api-key属性,富文本编辑器也能使用,但会有恼人的提示:

The API key you have entered is invalid. Please review your API key here.

四、下载中文语言包

经过以上三步,已经可以使用了,但菜单是英文的,因此需要本地化为中文。进入官网下载中文语言包,语言包地址

五、导入中文语言包

在项目的public目录下新建tinymce目录,并将下载好的中文语言包中的zh_CN.js文件拷贝到tinymce目录中。

这是最为关键的一步,需注意的是:

  • 必须在public目录下创建文件夹来存放语言包。原因是语言包必须能通过绝对路径访问,而对于我们的vue项目而言,绝对路径是public目录。

现在传入tinymce编辑器的初始化参数,在其中正确设置语言参数,如下:

    <tinymce-editor api-key="API_KEY"
:init="editorConfig"></tinymce-editor>
import Editor from '@tinymce/tinymce-vue';
export default {
name: 'HelloWorld',
components: {
'tinymce-editor': Editor
},
data(){
return {
editorConfig:{
language: 'zh_CN',
language_url: '/tinymce/zh_CN.js'
}
}
}
}

其中language_url必须传入绝对路径

六、继续汉化

即便我们已经有了中文语言包,由于tinymce的插件众多,情况千差万别,难免有汉化不全的情况。这时,我们只需要进入zh_CN.js文件中,添加需要汉化的英文即可,例如:

{ "Insert iframe": "插入iframe" }
  • 虽然我们看到原本的语言包中的中文采用的是unicode编码,但我们并不是只能采用unicode编码,直接输入汉字也是可以的。

本文完~。

Vue集成tinymce富文本编辑器并实现本地化指南(2019.11.21最新)的更多相关文章

  1. vue集成百度富文本编辑器

    1.前期工作,访问百度富文本官网下载相应的百度富文本文件,根据后端用的技术下载相应的版本,建议下载最新版UTF-8版 (有图有真相,看图) https://ueditor.baidu.com/webs ...

  2. vue 集成百度富文本编辑器

    <template> <div> <textarea style="display:none" id="editor_content&quo ...

  3. vue集成ckeditor富文本框,怎么获取CKEditor实例?

    CKEDITOR 版本5 ,vue集成形式 vue集成ckeditor富文本框,由于不是通过js创建的富文本对象,所以,无法取得实例对象,官方说明 官方在builds-->Getting and ...

  4. 在 Vue 项目中引入 tinymce 富文本编辑器

    项目中原本使用的富文本编辑器是 wangEditor,这是一个很轻量.简洁编辑器 但是公司的业务升级,想要一个功能更全面的编辑器,我找了好久,目前常见的编辑器有这些: UEditor:百度前端的开源项 ...

  5. vue中引入Tinymce富文本编辑器

    最近想在项目上引入一个富文本编辑器,之前引入过summernote,感觉并不太适合vue使用, 然后在网上查了查,vue中使用Tinymce比较适合, 首先,我们在vue项目的components文件 ...

  6. Vue基于vue-quill-editor富文本编辑器使用心得

    vue-quill-editor的guthub地址,现在市面上有很多的富文本编辑器,我个人还是非常推荐Vue自己家的vue-quill-deitor,虽然说只支持IE10+,但这种问题,帅给别人吧! ...

  7. django2集成DjangoUeditor富文本编辑器

    富文本编辑器,在web开发中可以说是不可缺少的.django并没有自带富文本编辑器,因此我们需要自己集成,在这里推荐大家使用DjangoUeditor,因为DjangoUeditor封装了我们需要的一 ...

  8. tinymce 富文本编辑器 编写资料

    tinymce官方文档: 粘贴图片插件 博客搬运地址 使用Blob获取图片并二进制显示实例页面 tinymce自动调整插件 是时候掌握一个富文本编辑器了——TinyMCE(1) XMLHttpRequ ...

  9. 项目页面集成ckeditor富文本编辑器

    步骤一.引入ckeditor.js (注:本实例以ThinkPHP3.2框架为载体,不熟悉ThinkPHP的朋友请自行补习,ckeditor文件代码内容也请去ckeditor官网自行下载) 作为程序员 ...

随机推荐

  1. reuire代码优化之:r.js

    r.js是requireJS的优化(Optimizer)工具,可以实现前端文件的压缩与合并,在requireJS异步按需加载的基础上进一步提供前端优化,减小前端文件大小.减少对服务器的文件请求.要使用 ...

  2. Python语言上机题实现方法(持续更新...)

    Python语言上机题实现方法(持续更新...) 1.[字符串循环左移]给定一个字符串S,要求把S的前k个字符移动到S的尾部,如把字符串"abcdef"前面的2个字符'a'.'b' ...

  3. SpringCloud(一)之我学 Eureka

    1.常用注册中心 1).zookeeper:高一致性(多个节点的数据保持一致): 2).eureka:高可用(系统不能访问的时间很少): 3).consul:上诉两个方案的折中. 高可用:消灭单点故障 ...

  4. 汇编刷题:求1000H单元开始的10个无符号字节数的最大值(本题放入了BL寄存器)

    DATA SEGMENT ORG 1000H INFO DB 1,2,3,4,5,70H,71H,72H,80H,92H MAX DB 00H DATA ENDS CODE SEGMENT ASSUM ...

  5. Linux 系统篇(一)

    退出当前程序    quit 填充代码:    tab键 中断当前操作:    ctrl + c 键盘输入结束    ctrl + d 关机        shutdown 重启        reb ...

  6. 如何增加Tomcat内存

    有时候在开发中,常常遇到内存溢出问题,很有可能项目过大,导致Tomcat内存不足问题,那么此时就要给Tomcat添加内存了,如,操作如下 1. 先找到Tomcat目录下的catalina.bat文件

  7. 10.6 IoStudentManager

    package day11_io_student.student_demo; public class Student { private String id; private String name ...

  8. String 对象-->length 属性

    1.定义和用法 length 属性返回字符串的长度(字符数). 语法: string.length 注意:根据各国字符长度计算长度 举例: var str = 'abner pan' console. ...

  9. 基于mui的H5套壳APP开发web框架分享

    前言 创建一个main主页面,只有主页面有头部.尾部,中间内容嵌入iframe内容子页面,如果在当前页面进行跳转操作,也是在iframe中进行跳转,而如果点击尾部按钮切换模块.页面,那就切换ifram ...

  10. java的套接字实现远程连接

    package jnet;//客户端程序,使用套接字连接服务器import java.net.*;import java.io.*;import javax.swing.*; public class ...