使用vue3 + ts + vite + v-md-editor 在前端页面预览markdown文件

news/2024/7/10 3:16:35 标签: vue, vue.js, html5

1.效果预览

效果预览

2. 依赖包安装

yarn add @kangc/v-md-editor@next

v-md-editor中文官网:https://code-farmer-i.github.io/vue-markdown-editor/zh/

v-md-editor分为4种组件:

  • 轻量版编辑器
  • 进阶版编辑器
  • 预览组件
  • html预览组件

对UI组件库页面,我只需要展示markdown解析出的html页面即可,所以使用的组件应该是预览组件

3.在main.ts中导入VMdPreview预览组件

// 引入v-md-editor组件
import VMdPreview from '@kangc/v-md-editor/lib/preview';
import vuepressTheme from '@kangc/v-md-editor/lib/theme/vuepress.js';
import '@kangc/v-md-editor/lib/style/base-editor.css';
import '@kangc/v-md-editor/lib/theme/style/vuepress.css';
import Prism from "prismjs";

VMdPreview.use(vuepressTheme, {
  Prism,
});

const app = createApp(App)
app.use(VMdPreview)
app.use(router)  // 如果不使用vue-router可以注释掉
app.mount('#app')

4.在页面中使用 ?raw 后缀调用md文件中内容,在页面中加载

vite中引入静态资源如md等文件,需要在末尾加上 ?raw 这样引入进来的就是markdown文件中的内容了

<template>
  <v-md-preview :text="markdownTxt"></v-md-preview>
</template>

<script setup lang="ts">
  import markdownTxt from '@/assets/mdDemo/testDemo.md?raw'
  import { ref, reactive, onMounted, useAttrs } from "vue";
    import { useRouter } from "vue-router";
  let props = defineProps({
        markdownTxt: String
    }) 
</script>

通过以上步骤,就可以将markdown文件转换成页面中可显示的html了


http://www.niftyadmin.cn/n/4938302.html

相关文章

文献综述|NLP领域后门攻击、检测与防御

前言&#xff1a;在信息安全中后门攻击&#xff08;Backdoor Attack&#xff09;是指绕过安全控制而获取对程序或系统访问权的方法。而随着深度学习以及各种神经网络模型的广泛应用&#xff0c;神经网络中存在的后门问题也引起了研究人员的广泛关注。神经网络后门攻击就是使网络…

SPI协议个人记录

SPI协议 SPI&#xff08;Serial Peripheral Interface&#xff09;是一种同步串行接口技术&#xff0c;由Motorola公司推出。SPI总线系统是一种同步串行外设接口&#xff0c;允许MCU与各种外围设备以串行方式进行通信和数据交换。外围设备包括FLASHRAM、A/D转换器、网络控制器…

嵌入式微控制器架构为AI演进

如果您将IoT与AI相结合会得到什么&#xff1f;AIoT是简单的答案&#xff0c;但由于神经网络技术的进步&#xff0c;使机器学习不再局限于超级计算机的世界&#xff0c;因此您还将获得嵌入式微控制器的巨大新应用领域。如今&#xff0c;智能手机应用处理器可以&#xff08;并且确…

leetcode 面试题 02.05 链表求和

⭐️ 题目描述 &#x1f31f; leetcode链接&#xff1a;面试题 02.05 链表求和 ps&#xff1a; 首先定义一个头尾指针 head 、tail&#xff0c;这里的 tail 是方便我们尾插&#xff0c;每次不需要遍历找尾&#xff0c;由于这些数是反向存在的&#xff0c;所以我们直接加起来若…

(二分查找) 11. 旋转数组的最小数字 ——【Leetcode每日一题】

❓剑指 Offer 11. 旋转数组的最小数字 难度&#xff1a;简单 把一个数组最开始的若干个元素搬到数组的末尾&#xff0c;我们称之为数组的旋转。 给你一个可能存在 重复 元素值的数组 numbers &#xff0c;它原来是一个升序排列的数组&#xff0c;并按上述情形进行了一次旋转…

Go和Java实现代理模式

Go和Java实现代理模式 下面通过一个用户登录的例子来说明代理模式的使用。 1、代理模式 在代理模式中&#xff0c;一个类代表另一个类的功能。这种类型的设计模式属于结构型模式。 在代理模式中&#xff0c;我们创建具有现有对象的对象&#xff0c;以便向外界提供功能接口。…

mysql分库分表相关

3小时快速上手sharding-jdbc 百亿级数据 分库分表 后面怎么分页查询&#xff1f; Java实战&#xff1a;教你如何进行数据库分库分表

瓴羊发布All in One 产品,零售SaaS的尽头是DaaS?

“打破烟囱、化繁为简&#xff0c;让丰富的能力、数据和智能All in One”&#xff0c;这是瓴羊新发布的产品瓴羊One承担的使命&#xff0c;也意味着瓴羊DaaS事业迈入了一个新阶段。 成立伊始&#xff0c;瓴羊就打出了“Not SaaS&#xff0c;But DaaS”旗号&#xff0c;将自己的…