Vue3中使用富文本编辑器的方法详解

 更新时间:2024年01月17日 10:40:34   作者:Csharp 小记  
这篇文章主要为大家详细介绍了如何在Vue3中使用富文本编辑器,文中的示例代码讲解详细,具有一定的学习价值,感兴趣的小伙伴可以参考一下

前言

由于近年来Web做的比较少,即便做一些后台管理系统,基本也都没要求富文本编辑器,让我一度以为这东西没人用了,突然就想起来最开始使用富文本编辑器得时候还是写Asp.Net WebForm,那个时候好像都用FckEditor还是Ueditor来着。不过由于前后端分离得原因,使我不得不去寻找使用与Vue的富文本编辑器,随便搜索一下,蛮多的,然后翻两页,发现tinymce的使用文档不少,想想就它吧,可是我着实没想到啊,查到的文档大部分在vue3中都不能用,所以就不得不结合一些博客以及官方文档来实现

不过也是我的问题吧,对于前端的知识就了解那么点,多少费了点周折。

以下可参考官网:https://www.tiny.cloud/docs/tinymce/latest/vue-cloud/

开发工具:Visual Studio Code

实现步骤

1.首先新建一个Vue3项目,emmm,这一步其实是不需要的,一般我们都是集成到自己项目中的

npm create vue@3
//然后按照提示一步步走就行了,环境问题不在此考虑,创建完成之后CD进目录

2.安装tinymce包

npm install @tinymce/tinymce-vue -S

3.下载汉化资源https://www.tiny.cloud/get-tiny/language-packages/,找到zh-相关的下载即可,解压后将langs文件夹放在public目录下

4.将node_modules/tinymce/skins文件夹复制到public目录下

5.将富文本框组件化,方便调用,内容如下

<template>
  <Editor :disabled="disabled" :init="init" :api-key="apiKey" style="width: 100%" />
</template>
<script setup>
import tinymce from "tinymce/tinymce"; //tinymce核心文件
import Editor from "@tinymce/tinymce-vue";

import "tinymce/models/dom"; // 引入dom模块。从 Tinymce6,开始必须有此模块导入
import "tinymce/themes/silver"; //默认主题
import "tinymce/icons/default"; //引入编辑器图标icon

import 'tinymce/plugins/code'//引入需要的插件

const apiKey = "qagffr3pkuv17a8on1afax661irst1hbr4e6tbv888sz91jc";

const init = {
  height: 300,
  language_url: "./tinymce/langs/zh-Hans.js",
  language: "zh-Hans",
  skin_url: "./tinymce/skins/ui/oxide",
  content_css: "./tinymce/skins/content/default/content.css",
  branding: false,
  menubar: false,
  statusbar: true,
  plugins: "code",//插件列表,需要先引入插件对应的包
  toolbar:
    "undo redo |fontsize bold italic underline strikethrough forecolor backcolor | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent blockquote | lists image media table | codesample code removeformat save preview",
};//显示在工具栏中的菜单
</script>

6.调用

<template>
  <div style="width: 80vw">
    <TinymceEditor v-model="data"></TinymceEditor>
  </div>
  <div>
    <button @click="getInput" >获取</button>
  </div>
</template>
<script setup>
import TinymceEditor from "./components/TinymceEditor.vue";
import { ref, onMounted, watch } from "vue";
const data = ref("");
const getInput = () => {
  alert(data.value);
};
</script>

<style scoped></style>

由于我需要的还是比较简单的功能,所以像图片上传之类的就没做,有需要可以直接参考官网

实现效果

到此这篇关于Vue3中使用富文本编辑器的方法详解的文章就介绍到这了,更多相关Vue3富文本编辑器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Vue.js中让人容易忽略的API详解

    Vue.js中让人容易忽略的API详解

    Vue.js是构建Web界面的渐进式JavaScript框架,通过简洁的 API 提供高效的数据绑定和灵活的组件系统,这篇文章主要给大家介绍了关于Vue.js中让人容易忽略的API的相关资料,需要的朋友可以参考下
    2021-09-09
  • vue 使用v-for进行循环的实例代码详解

    vue 使用v-for进行循环的实例代码详解

    这篇文章主要介绍了vue 使用v-for进行循环的实例代码详解,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • Vue基于localStorage存储信息代码实例

    Vue基于localStorage存储信息代码实例

    这篇文章主要介绍了Vue基于localStorage存储信息代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • vue实现的多页面项目如何优化打包的步骤详解

    vue实现的多页面项目如何优化打包的步骤详解

    这篇文章主要介绍了vue实现的多页面项目如何优化打包的步骤详解,文中通过示例代码以及图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-07-07
  • Vue使用pdfobject实现预览pdf的示例详解

    Vue使用pdfobject实现预览pdf的示例详解

    PDFObject 是一个 JavaScript 库用来在HTML中动态嵌入 PDF 文档。这篇文章主要为大家详细介绍了使用pdfobject实现预览pdf的功能,需要的可以了解一下
    2023-03-03
  • 基于Vue3实现视频播放与截图功能

    基于Vue3实现视频播放与截图功能

    这篇文章主要为大家详细介绍了如何通过Vue3实现简单的视频播放与截图功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2025-04-04
  • Vue中的计算属性介绍

    Vue中的计算属性介绍

    这篇文章主要介绍了Vue中的计算属性,模板内的表达式,用于简单运算,但是模板中放入太多的逻辑会让模板过重且难以维护,更多具体内容一起进入下面文章学习吧,需要的朋友也可以参考一下
    2021-12-12
  • vue3实战-子组件之间相互传值问题

    vue3实战-子组件之间相互传值问题

    这篇文章主要介绍了vue3实战-子组件之间相互传值问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • 如何一步步基于element-ui封装查询组件

    如何一步步基于element-ui封装查询组件

    这篇文章主要给大家介绍了关于如何一步步基于element-ui封装查询组件的相关资料,本文通过示例代码介绍的非常详细,对大家学习或者使用vue.js具有一定的参考学习价值,需要的朋友可以参考下
    2021-10-10
  • vue中同时监听多个参数的实现

    vue中同时监听多个参数的实现

    这篇文章主要介绍了vue中同时监听多个参数的实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04

最新评论