尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

React 展示Markdown内容 - 教程

React 展示Markdown内容 - 教程
📅 发布时间:2026/6/19 11:48:57

React 展示Markdown内容 - 教程

Vditor:一款功能强大的前端 Markdown 编辑器

前言

在开发知识库系统时,选择一款合适的 Markdown 编辑器至关重要。经过调研和对比,我最终选择了 Vditor,这是一款功能全面且适用于多种前端框架的 Markdown 编辑器。无论是 Vue、React 还是 jQuery,Vditor 都能轻松集成。本文将详细介绍 Vditor 的基本用法,并分享一些实际开发中的经验。


Vditor 的优点

Vditor 的官方描述是:“易于使用的 Markdown 编辑器,为适配不同的应用场景而生。” 其核心优势包括:

  1. 跨框架支持:适用于 Vue、React、jQuery 等主流前端框架。
  2. 功能全面:支持多种编辑模式、代码高亮、图片上传、主题切换等。
  3. 高度可定制:工具栏、主题、上传配置等均可自定义。
  4. 性能优异:支持实时保存、懒加载、多平台预览等功能。

基本用法

以下以 Vue 2.x 项目为例,介绍 Vditor 的安装和基本使用。

1. 安装依赖

通过 npm 安装 Vditor:

npm install vditor --save
2. 引入并初始化

在 Vue 组件中引入 Vditor 及其样式文件:

import Vditor from 'vditor';
import 'vditor/dist/index.css';
// 或者使用官方推荐的引入方式
3. 初始化编辑器

在组件中初始化 Vditor:

<template><div id="markdownDocument" /></template><script>export default {mounted() {const wikiContent = '';// 从后端接口获取的文章内容const editDocument = document.getElementById('markdownDocument');this.articleEditor = new Vditor(editDocument, {height: 600,mode: 'sv', // 分屏预览模式preview: {theme: { current: 'classic'}, // 设置内容主题hljs: { style: 'dracula'}, // 设置代码块主题},toolbarConfig: { pin: true}, // 工具栏配置upload: {url: 'article/uploadImage', // 图片上传地址accept: 'image/*',fieldName: 'file',token: 'test',multiple: false,filename(name) {return name.replace(/[^(a-zA-Z0-9\u4e00-\u9fa5\.)]/g, '').replace(/[\?\\/:|<>\*\[\]\(\)\$%\{\}@~]/g, '').replace('/\\s/g', '');},format(files, responseText) {const res = JSON.parse(responseText);const name = files[0].name;const url = res.data;return JSON.stringify({code: 0,data: { errFiles: '', succMap: {[name]: url}},});},},toolbar: ['emoji', 'headings', 'bold', 'italic', 'strike', '|', 'line', 'quote', 'list', 'ordered-list','check', 'outdent', 'indent', 'code', 'inline-code', 'insert-after', 'insert-before', 'undo','redo', { name: 'upload', tip: '上传图片'}, 'link', 'table', 'edit-mode', 'both', 'preview', 'fullscreen','outline', 'code-theme', 'export', 'devtools', 'br',],cache: { enable: false},after: () =>{this.articleEditor.setValue(wikiContent);// 设置初始内容},});},};</script>

仅展示 Markdown 内容

如果只需展示 Markdown 内容而不需要编辑功能,可以使用以下两种方式:

方式一:引入 method.min
import VditorPreview from 'vditor/dist/method.min';
<template><div id="viewDoc" /></template><script>export default {mounted() {const content = '# 标题 正文';// 后端返回的 Markdown 内容const viewDoc = document.getElementById('viewDoc');VditorPreview.preview(viewDoc, content, {theme: { current: 'light'}, // 设置主题hljs: { style: 'github'}, // 设置代码块样式});},};</script>
方式二:使用 md2html
import { md2html
} from 'vditor';
const htmlContent = md2html(mdText, options);

高级功能

Vditor 还支持以下高级功能:

  1. 多种编辑模式:所见即所得(wysiwyg)、即时渲染(ir)、分屏预览(sv)。
  2. 扩展功能:数学公式、脑图、流程图、甘特图、时序图等。
  3. 多主题支持:内置黑白绿三套主题,支持自定义。
  4. 多语言支持:内置中、英、韩文本地化。
  5. 实时保存:防止内容丢失。

注意事项

在使用 Vditor 时,需注意以下问题:

  1. CDN 依赖:Vditor 依赖一个外网 CDN(lute.min.js),建议自建 CDN 以避免服务中断。
  2. 自定义配置:根据项目需求灵活配置工具栏、上传功能等。

总结

Vditor 是一款功能强大且易于集成的 Markdown 编辑器,适用于多种前端框架和场景。无论是编辑还是展示 Markdown 内容,Vditor 都能提供良好的支持。如果你有类似需求,强烈推荐尝试 Vditor。

内容来源:Vditor 使用指南


希望本文对你有所帮助!如果有任何问题或建议,欢迎留言讨论。

相关新闻

  • 图像处理去除噪点验证码的识别逻辑实践
  • Java文件上传和其他参数一起提交的案例
  • Windows 环境变量配置

最新新闻

  • Adobe-GenP 3.0:五分钟解锁Adobe全家桶的专业指南
  • 2026成都闲置名包别卖亏了!五大回收门店横向测评 - 奢品小当家
  • 2026庐江中考200-400分的学生选择合肥理工学校,升本率第一!官方最新简章已发,官方电话17683652068 - 小张zc
  • 上海闵行区新手出手大牌包包全流程,一步教你轻松拿到满意报价 - 奢品小当家
  • DolphinDB Kafka数据接入:消息队列集成
  • 合肥高新区 房屋修缮|维小达|墙面/吊顶/窗户/壁纸壁布/瓷砖美缝/石材修复全屋破损翻新一站式服务 - 维小达科技

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号