在vue项目中使用tinymce编辑器(tinymce-vue)

栏目: JavaScript · 发布时间: 6年前

内容简介:项目使用vue-cli 3.x版本,tinymce5出现的问题和摸索出的解决方案(参考了步骤:

tinymce-vue笔记

项目使用vue-cli 3.x版本,tinymce5

1. 安装

npm install @tinymce/tinymce-vue

2. 引用

出现的问题和摸索出的解决方案(参考了 https://www.cnblogs.com/wisewrong/p/8985471.html ,虽然文章里使用的是tinymce4,但是也有很大帮助)

  • 报第一个错,发现只安装tinymce-vue不可以,还需安装tinymce,执行
npm install tinymce
  • 按示例初始化发现编辑器不显示,报“ theme.js:1 Uncaught SyntaxError: Unexpected token < ”这个错,需要手动引入tinymce主题,在init({})方法里加 theme: 'silver', 没用。
import 'tinymce/themes/silver/theme'
  • 不报错了但是编辑器还是不显示,继续研究,发现还需要定义skin_url,在init({})里加 skin: "oxide" 没用。先在public目录下新建一个文件夹命名为tinymce,然后在node_modules里找到tinymce的skin包,复制到public/tinymce里,然后创建tinymce时添加一行代码
skin_url: '/tinymce/skins/ui/oxide',

3. 定制

  • 将语言改为中文

步骤:

  1. 在官网下载语言包 https://www.tiny.cloud/get-tiny/language-packages/
  2. 把下载的语言包放到之前新建的tinymce文件夹里
  3. 初始化时添加以下代码
language_url: `/tinymce/langs/zh_CN.js`,
      language: 'zh_CN',
  • 在tinymce5 工具 栏添加自定义功能按钮
const that = this
    this.tinymceInit = {
    toolbar: 'imageUpload',
      setup: (editor) => {
        editor.ui.registry.addButton('imageUpload', {
          tooltip: '插入图片',
          icon: 'image',
          onAction: () => {
            let upload = that.$refs.imageUpload
            upload.handleClick()
          }
        })
      }
    }

上面代码是添加插入图片按钮,借助iview的Upload组件,将图片先上传到存储云上,再将图片的存储地址放入编辑器内容。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

计算理论导论

计算理论导论

塞普斯 / 机械工业出版社 / 2002-8 / 39.0

This book——by a noted authority and educator in the field——presents computer science theory from a uniquely intuitive,“big picture”perspective.The author grounds his clear and interesting study on ......一起来看看 《计算理论导论》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具