阿丹千问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+"");
    },

效果完美!下班!

相关推荐
#麻辣小龙虾#1 小时前
基于vue3.0开发一款【固废与废气运维管理系统】(支持源码)
前端·vue.js·vue3
一 乐2 小时前
家政服务管理系统|基于springboot + vue家政服务管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·家政服务管理系统
烬羽3 小时前
后端返回的 JSON 字符串,浏览器怎么"看懂"的?——Ajax 全链路拆解
javascript
半个落月3 小时前
一个新手用 Bun + Axios 调通 DeepSeek API 的实践记录
javascript
不好听6133 小时前
深入理解链表:线性数据结构的另一面
javascript·数据结构
林希_Rachel_傻希希4 小时前
学React治好了我的焦虑症,1小时速通React 前20分钟。
前端·javascript·面试
小林ixn4 小时前
从 Ajax 到异步编程:JSON 序列化、Event Loop 与 XHR 请求完全解析
javascript
丷丩5 小时前
MapLibre GL JS第47课:添加动画图标
javascript·gis·动画·mapbox·maplibre
独泪了无痕5 小时前
Vue3中防御XSS攻击的“特效药”-DOMPurify
前端·vue.js·安全
快乐的哈士奇5 小时前
【Next.js实战①】Gmail API 按柜号检索邮件:OAuth 双 Cookie 与搜索 Fallback
开发语言·javascript·ecmascript