Vue3——富文本

1. Quill

npm i -S quill @vueup/vue-quill
<QuillEditor v-model:content="content" contentType="html" theme="essential" />

官方文档:https://quill.nodejs.cn/docs/quickstart

2. Wangeditor

npm i -S @wangeditor/editor-for-vue@next
<template>
  <div style="border: 1px solid black;">
    <Toolbar style="border-bottom: 1px solid #ccc" :editor="editorRef" />
    <Editor style="height: 500px; overflow-y: hidden;" v-model="valueHtml" @onCreated="handleCreated" />
  </div>
</template>

<script setup lang="ts">
import { shallowRef, ref } from 'vue';
import { Toolbar, Editor } from "@wangeditor/editor-for-vue"
import '@wangeditor/editor/dist/css/style.css'

const editorRef = shallowRef();
const valueHtml = ref('');

const handleCreated = (v) => {
  editorRef.value = v
}
</script>

官方文档:https://www.wangeditor.com/v5/getting-started.html

### 使用 Vue 3 展示富文本内容 为了在 Vue 3展示富文本内容,可以采用多种方法。一种常见的做法是利用 `v-html` 指令直接渲染 HTML 字符串到 DOM 节点上[^1]。 #### 方法一:使用 v-html 渲染富文本 当接收到包含 HTML 的字符串数据时,可以直接通过 `v-html` 将其绑定至模板中的元素属性: ```vue <template> <div class="rich-text-container"> <!-- 绑定HTML字符串 --> <div v-html="richTextContent"></div> </div> </template> <script setup> import { ref } from &#39;vue&#39;; // 假设这是来自服务器或其他地方的数据 const richTextContent = ref(&#39;<p>这是一个<strong>加粗</strong>的例子。</p><ul><li>列表项1</li><li>列表项2</li></ul>&#39;); </script> ``` 这种方法简单易用,但是需要注意的是,在实际项目中应当确保所使用的 HTML 数据源安全可靠,防止 XSS 攻击风险。 #### 方法二:集成第三方编辑器组件库 对于更复杂的需求场景,则推荐引入专门用于处理富文本的插件或框架,比如 Quill Editor 或者 TinyMCE 。这些工具提供了丰富的配置选项以及良好的用户体验支持。 以 quill-editor 为例,安装并注册全局组件之后就可以方便地创建可编辑区域了: ```bash npm install @vueup/vue-quill --save ``` ```javascript // main.js or equivalent entry file import &#39;@vueup/vue-quill/dist/vue-quill.snow.css&#39;; import { createApp } from &#39;vue&#39;; import App from &#39;./App.vue&#39;; import { QuillEditor } from &#39;@vueup/vue-quill&#39;; createApp(App).component(&#39;QuillEditor&#39;, QuillEditor).mount(&#39;#app&#39;); ``` 接着可以在任何页面里声明式地定义一个 editor 实例: ```vue <template> <quill-editor theme="snow" /> </template> ``` 这样不仅能够实现基本的文字样式调整功能,还允许插入图片、链接等多媒体资源,极大地增强了应用的表现力和交互性[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值