vue2/vue3使用tinymce封装富文本

本文介绍了如何在Vue2和Vue3项目中使用Tinymce进行富文本编辑器的封装。针对Vue2,讲解了安装、配置静态资源、组件页面的创建以及调用页面时的注意事项,特别提醒了防止ID冲突的问题。对于Vue3,文章同样阐述了安装步骤、配置静态资源以及组件封装和页面调用的方法。
摘要由CSDN通过智能技术生成

tinymce官网:http://tinymce.ax-z.cn/

vue2语法

前期准备

npm/cnpm/yarn install tinymce vue @tinymce/tinymce-vue -S

{
   
  "@tinymce/tinymce-vue": "^3.0.1",
  "tinymce": "^5.8.2",
  "vue": "2.6.10",
}

配置页面 - 项目public公共部分存放tinymce的中英翻译,皮肤等静态资源;

从node_model中直接赋值到项目中
在这里插入图片描述

组件页面

<template>
  <div class="tinymce-editor">
    <Editor
      :id="tinymceId"
      v-model="myValue"
      :init="init"
      :disabled="disabled"
      @onClick="onClick"
    />
  </div>
</template>

<script>
import axios from 'axios'
import tinymce from 'tinymce/tinymce' // tinymce默认hidden,不引入不显示
import Editor from '@tinymce/tinymce-vue' // 编辑器引入
import 'tinymce/themes/silver/theme' // 编辑器主题
import 'tinymce/icons/default' // 引入编辑器图标icon,不引入则不显示对应图标

import 'tinymce/plugins/advlist' // 高级列表
import 'tinymce/plugins/autolink' // 自动链接
import 'tinymce/plugins/link' // 超链接
import 'tinymce/plugins/image' // 插入编辑图片
import 'tinymce/plugins/lists' // 列表插件
import 'tinymce/plugins/charmap' // 特殊字符
import 'tinymce/plugins/media' // 插入编辑媒体
import 'tinymce/plugins/wordcount' // 字数统计
// import 'tinymce/plugins/axupimgs'

const fonts = [
  '宋体=宋体',
  '微软雅黑=微软雅黑',
  '新宋体=新宋体',
  '黑体=黑体',
  '楷体=楷体',
  '隶书=隶书',
  'Courier New=courier new,courier',
  'AkrutiKndPadmini=Akpdmi-n',
  'Andale Mono=andale mono,times',
  'Arial=arial,helvetica,sans-serif',
  'Arial Black=arial black,avant garde',
  'Book Antiqua=book antiqua,palatino',
  'Comic Sans MS=comic sans ms,sans-serif',
  'Courier New=courier new,courier',
  'Georgia=georgia,palatino',
  'Helvetica=helvetica',
  'Impact=impact,chicago',
  'Symbol=symbol',
  'Tahoma=tahoma,arial,helvetica,sans-serif',
  'Terminal=terminal,monaco',
  'Times New Roman=times new roman,times',
  'Trebuchet MS=trebuchet ms,geneva',
  'Verdana=verdana,geneva',
  'Webdings=webdings',
  'Wingdings=wingdings,zapf dingbats'
]
export default {
     
  components: {
     
    Editor
  },
  props: {
     
    // 内容
    value: {
     
      type: String,
      default: ''
    },
    tinymceId: {
     
      type: String,
      default: 'tinymce'
    },
    // 是否禁用
    disabled: {
     
      type: Boolean,
      default: false
    },
    // 插件
    plugins: {
     
      type: [String, Array],
      default: 'advlist autolink link image lists charmap  media wordcount'
    },
    // 工具栏
    toolbar: {
     
      type: [String, Array],
      default:
        'undo redo |  formatselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | lists image media table'
    }
  },
  data() {
     
    return {
     
      myValue: this.value,
      init: {
     
        selector: '#tinymce',
        language_url: process.env.VUE_APP_BASE_PUBLIC_URL + '/tinymce/langs/zh-cn.js', // 汉化路径是自定义的,一般放在public或static里面
        language: 'zh_CN',
        skin_url: process.env.VUE_APP_BASE_PUBLIC_URL + '/tinymce/skins/', // 皮肤
        plugins: this.plugins, // 插件
        toolbar: this.toolbar,// 工具栏
  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
Vue2 Tinymce富文本编辑器是一种用于在Vue2项目中实现富文本编辑功能的插件。您可以按照以下步骤进行安装和使用: 1. 首先,您需要安装依赖。可以通过在终端中运行以下命令来安装依赖: ``` npm install tinymce ``` 2. 接下来,您需要将tinymce的skins文件夹复制到您的项目中。您可以在node_modules/tinymce目录下找到skins文件夹,并将其复制到您的src/assets/tinymce目录下。 3. 然后,您可以创建一个Tinymce.vue组件来封装Tinymce编辑器。可以根据您的需求进行自定义配置,***并将其放置在您的项目中。 5. 在Vue组件中使用Tinymce编辑器时,您可以直接导入Tinymce组件并在template中使用它。您可以根据需要通过props传递参数给Tinymce组件。 6. 最后,在整体的目录结构中,您需要确保Tinymce相关的文件和依赖正确地放置在对应的位置。 在使用Vue2 Tinymce富文本编辑器的过程中,您可能会遇到一些问题,比如路径找不到导致无法引入“tinymce/icons/default”的问题。这时,您可以尝试升级tinymce的版本来解决这个问题。 希望以上信息对您有所帮助!<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [【vuevue2 中使用 Tinymce 富文本编辑器](https://blog.csdn.net/qq_46123200/article/details/130099360)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值