前端Vue2项目使用md编辑器

server/2025/1/23 13:21:57/

项目中有一个需求,要在前端给用户展示内容,内容有 AI 生成的,返回来的是 md 格式,所以需要给用户展示 md 格式,并且管理端也可以编辑这个 md 格式的文档。

使用组件库 v-md-editor。

https://code-farmer-i.github.io/vue-markdown-editor/zh/examples/base-editor.html#%E5%BC%95%E5%85%A5

使用npm 命令进行安装 
# 使用 npm  npm i @kangc/v-md-editor -S

对于用户端需要展示出来,管理端需要编辑,官方给的全局组件是用来编辑的。 我使用局部注册的来管理。

在 main.js 中 导入编辑和预览组件,使用 Vue.use()进行全局的注册。

import Vue from 'vue'
import App from './App.vue'Vue.config.productionTip = falseimport VMdEditor from '@kangc/v-md-editor';
import '@kangc/v-md-editor/lib/style/base-editor.css';
import githubTheme from '@kangc/v-md-editor/lib/theme/github.js';
import '@kangc/v-md-editor/lib/theme/style/github.css';import VMdPreview from '@kangc/v-md-editor/lib/preview';
import '@kangc/v-md-editor/lib/style/preview.css';import '@kangc/v-md-editor/lib/theme/style/github.css';
import hljs from 'highlight.js';// highlightjsVMdEditor.use(githubTheme, {Hljs: hljs,
});
VMdPreview.use(githubTheme, {Hljs: hljs,
});
Vue.use(VMdEditor);
Vue.use(VMdPreview);import router from './router'; // 导入路由配置
new Vue({router,render: h => h(App),
}).$mount('#app')

editView

<script>export default {data() {return {markdown: ``,};}
};
</script><template><div><v-md-editor v-model="markdown" height="400px" width="400px"></v-md-editor></div>
</template><style scoped>
/* 组件样式 */
</style>
//通过 v-model 进行双向的绑定

注意注册的组件时机选择应该是 created(),不太清楚为什么。官方也没有给说明文档。

showView

<template><div><v-md-preview :text="markdown"></v-md-preview></div>
</template><script>
// 只在本组件内引入需要的模块
export default {data() {return {markdown: `# 我的 Markdown 示例## 介绍Markdown 是一种轻量级标记语言,常用于编写格式化文本,常见应用包括文档编写、博客、GitHub 上的 README 文件等。## 示例代码\`\`\`python
def add(a, b):return a + bresult = add(3, 5)
print("结果是:", result)
\`\`\``};}
};
</script><style scoped>
/* 组件样式 */
</style>实际的markdown 可以由后端的接口进行返回

编辑界面

编写使用 markdown 语法,右边显示初对应的内容。

展示界面

这个是一个简单的版本,后面对于内容要保存到数据库中,要看官方文档,还有图片等上传。


http://www.ppmy.cn/server/160745.html

相关文章

开源轻量级文件分享服务Go File本地Docker部署与远程访问

???欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老…

Comment(爆破+git泄漏+二次注入)

通过爆破密码的后三位&#xff0c;获得账号为&#xff1a;zhangwei666 F12查看控制台 使用bugscanteam的githack工具&#xff0c;下载泄漏的源码&#xff0c;根据控制台的提示&#xff0c;完整源码还在历史的commit中 git log –reflog 查看历史记录 查看最新的提交记录&#…

内容中台实施最佳实践解析与应用指南

内容概要 内容中台是一个旨在提升企业内容管理与分发能力的战略性平台&#xff0c;其实施最佳实践对于企业在数字化转型中尤为重要。内容中台的建设&#xff0c;不仅涉及技术层面的架构设计&#xff0c;还需结合组织变革、业务流程优化等多个方面&#xff0c;以实现高效、灵活…

如何学习网络安全?有哪些小窍门?

学好网络安全其实没有所谓的捷径&#xff0c;也没有什么小窍门。 入门网络安全首先要有浓厚的学习兴趣&#xff0c;不然很容易就变成了从入门到放弃了。 其次要能静下心&#xff0c;踏踏实实的打好基础。如果你是零基础&#xff0c;建议从Web安全入手&#xff0c;课程难度相对…

simulink入门学习01

文章目录 1.基本学习方法2.图形环境--模块和参数3.激活菜单---添加到模型3.1输入选项3.2添加到模型3.3更改运算3.4验证要求 4.乘以特定值--Gain模块4.1引入gain模块4.2更改增益参数4.3接入系统4.4大胆尝试 1.基本学习方法 今天突然想要学习这个simulink的相关知识&#xff0c;…

FastExcel 新一代的潮流 (EasyExcel)

目录 简介 FastExcel的特点 FastExcel使用方法详解 创建实体类和监听器 实现写入和读取功能 Excel转换为PDF 小结 FastExcel与EasyExcel的区别 结论 简介 FastExcel是由原EasyExcel作者在阿里巴巴宣布停止维护EasyExcel之后推出的升级版框架。它继承了EasyExcel的所有…

Linux中关于glibc包编译升级导致服务器死机或者linux命令无法使用的情况

服务器上编译glibc2.29版本导致命令不能用 Inconsistency detected by ld.so: dl-call-libc-early-init.c: 37: _dl_call_libc_early_init: Assertion sym ! NULL failed!下面是造成不可用的原因 1.编译完gcc 2.29版本后&#xff0c;开始做映射&#xff0c;以达到能使用最新版…

Mac开启任何来源安装配置环境变量

目录 开启任何来源配置环境变量退出保存时如果没有权限修改文件权限拓展——.bash_profile和.zshrc 开启任何来源 sudo spctl --master-disable#打开软件时提示文件损坏 sudo xattr -r -d com.apple.quarantine 进入访达应用程序拖拽应用到终端配置环境变量 cd ~ vi ~/.bash…