Vue3使用markdown编辑器之Bytemd

官网地址:https://bytemd.js.org/playground

GitHub地址:https://github.com/bytedance/bytemd

ByteMD 是字节跳动出品的富文本编辑器,功能强大,可以免费使用,而且支持很多掘金内置的主题,写作体验很棒。

ByteMD 编辑器使用 Svelte 框架开发,支持原生、Vue、React、Svelte 框架集成,几乎适用于所有前端开发人员。

有两个组件:Editor 和 Viewer。Editor 顾名思义就是 Markdown 编辑器;Viewer 通常用于显示渲染的 Markdown 结果,无需编辑。

安装:

shell 复制代码
npm install @bytemd/vue-next
shell 复制代码
# 安装辅助插件,例如gfm(表格支持)插件、highlight 代码高亮插件、GitHub风格的Markdown CSS框架
npm install @bytemd/plugin-gfm
npm install @bytemd/plugin-highlight
npm install github-markdown-css

封装组件

MdViewer.vue

html 复制代码
<template>
	<Viewer :value="value" :plugins="plugins" />
</template>

<script setup lang="ts">
	import { Viewer } from "@bytemd/vue-next";
	import gfm from "@bytemd/plugin-gfm";
	import highlight from "@bytemd/plugin-highlight";
	import "bytemd/dist/index.css";
	import "highlight.js/styles/default.css";
	import "github-markdown-css/github-markdown-light.css";
	// import "github-markdown-css/github-markdown-dark.css";

	const plugins = [
		gfm(), 
		highlight()
	];

	interface Props {
		value : string;
	}

	const props = withDefaults(defineProps<Props>(), {
		value: () => {
			return "";
		},
	});
</script>

使用

html 复制代码
import MdViewer from "./MdViewer.vue";
html 复制代码
<md-viewer :value="mdContent" />

效果:

相关推荐
幸运小圣2 小时前
Vue3 -- 项目配置之prettier【企业级项目配置保姆级教程2】
前端·vue.js·vue
计算机-秋大田2 小时前
基于微信小程序的农场管理系统的设计与实现,LW+源码+讲解
java·spring boot·微信小程序·小程序·vue
fukaiit3 小时前
vue项目npm run serve出现【- Network: unavailable】(从排查到放弃)
npm·vue·node·win11
哑巴湖小水怪3 小时前
WPS宏编辑器开发,单元格内容变更自动触发事件
java·编辑器·wps
_处女座程序员的日常7 小时前
Rollup failed to resolve import “destr“ from ***/node_modules/pinia-plugin-pers
javascript·uni-app·vue
四喜花露水17 小时前
vue2.x elementui 固定顶部、左侧菜单与面包屑,自适应 iframe 页面布局
前端·elementui·vue
松果猿19 小时前
Vite初始化Vue3+Typescrpt项目
vue
哟哟耶耶1 天前
vscode-相关自用插件(倒计时,时间显示,编码对齐,css等编码颜色,简体中文,git提交相关,vue项目)
ide·vscode·编辑器
龙哥·三年风水1 天前
群控系统服务端开发模式-应用开发-前端个人资料开发
分布式·vue·群控系统
CodeCraft Studio1 天前
【实用技能】ASP.NET Core:在同一个 Razor 视图中使用文档编辑器和查看器
编辑器·asp.net