阿丹千问vue页面升级-使用Markdown形式展示回答--markdown-it库

阿丹:

在之前开发的阿丹千问

发现回复的文章格式使用 Markdown的格式。所以想使用Markdown的方式来给页面来个升级。

下面就是升级以及开发的过程。

升级思路

使用vue中的markdown-it库

在Vue页面中使用Markdown文档

安装markdown-it:

在Vue项目中,使用markdown-it库来解析和渲染Markdown文档。你可以使用npm或yarn安装该库:

复制代码
npm install markdown-it

或者

复制代码
yarn add markdown-it

创建一个Markdown组件

在Vue项目中,可以创建一个自定义的Markdown组件,负责解析和渲染Markdown文档。可以在组件中使用markdown-it库来实现这一目标。以下是一个简单的示例:

javascript 复制代码
<template>
  <div>
    <div v-html="renderedMarkdown"></div>
  </div>
</template>

<script>
import MarkdownIt from 'markdown-it';

export default {
  data() {
    return {
      markdown: '# Hello, World!',
      renderedMarkdown: ''
    };
  },
  mounted() {
    this.renderMarkdown();
  },
  methods: {
    renderMarkdown() {
      const md = new MarkdownIt();
      this.renderedMarkdown = md.render(this.markdown);
    }
  }
};
</script>

以上方案可完成使用Markdown形式来解读。

在上面的示例中,首先引入了markdown-it库,然后在组件的data中定义了一个markdown变量,用于存储Markdown文档。在mounted钩子中,调用了renderMarkdown方法,它使用markdown-it来解析和渲染Markdown文档,并将结果保存在renderedMarkdown变量中。最后,在组件的模板中,使用v-html指令将解析后的Markdown文档渲染到页面上。

使用组件式开发

在Vue页面中使用Markdown组件:现在,可以在Vue页面中使用自定义的Markdown组件来展示Markdown文档

javascript 复制代码
<template>
  <div>
    <markdown></markdown>
  </div>
</template>

<script>
import Markdown from '@/components/Markdown.vue';

export default {
  components: {
    Markdown
  }
};
</script>

在上面的示例中,通过import语句引入了自定义的Markdown组件,并在Vue页面的模板中使用了<markdown></markdown>标签来调用该组件。

以上方法如果要使用那么需要绑定赋值 ,一定需要注意!!!

简单页面函数-以及快捷实现

按照上面下载相应依赖。

复制代码
//使用函数解析markdown
 <div class="message-content" v-html="parsedContent(message.content)">

            </div>


 //初始化md对象
      md: new MarkdownIt(),


//具体转换函数
 parsedContent(message) {
      return this.md.render(message+"");
    },

效果完美!下班!

相关推荐
默_笙5 小时前
🚦 请三个 AI 考官给 RAG 打分:量化评估实战(下)
前端·javascript
阿坨5 小时前
灵感闪存卡:一款 Tampermonkey用户脚本
javascript·tampermonkey
朝朝辞暮i7 小时前
C++ 第 25 课:getter / setter + this
java·javascript·c++
蜗牛互联网7 小时前
Python接入Gemini 3.8 Flash实现票据视觉抽取与规则校验
java·javascript·网络·人工智能·python
易朵朵8 小时前
CSS 格式化上下文
css·vue.js
xieter8 小时前
【技术精选】深入浅出现代前端渲染与性能优化实践指南 (2026-10-04)
前端·javascript
xieter8 小时前
【硬核实战】TypeScript Compiler API: Preserving Child Node Narrowing in Reusable Type Guards 🔧 (2026-10-03)
前端·javascript
xieter8 小时前
【硬核实战】React 19 useFormStatus Returning False? I Built a SubmitButton That Fixes It (2026-10-03)
前端·javascript
雪芽蓝域zzs9 小时前
第6节:远程搜索弹窗(remote 模式),弹窗滚动加载分页
vue.js·elementui
paopaokaka_luck10 小时前
非遗文物数字化小程序(AI非遗问答、ONNX图像识别、协同过滤推荐、ECharts数据分析、非遗知识浏览与互动、文创商城订单闭环、文化活动报名签到、社区交流)
javascript·spring boot·mysql·数据分析·echarts·mybatis