在 Nuxt3中使用 markdown-it 来处理 Markdown 是一个很实用的功能,特别是在构建博客或文档站点时。以下是一个简单的指南,说明如何在 Nuxt3 中集成 markdown-it

  1. 安装 markdown-it

    首先,你需要安装 markdown-it 和可能的插件。你可以通过 npm 或 yarn 来安装它们。

    npm install markdown-it

    或者使用 yarn:

    yarn add markdown-it

  2. 创建一个插件来配置 markdown-it

    在你的 Nuxt 3 项目中,创建一个新的插件文件来配置 markdown-it。例如,可以在 plugins 文件夹中创建一个文件 markdown-it.ts

     1// plugins/markdown-it.js
     2import MarkdownIt from 'markdown-it'
     3
     4export default defineNuxtPlugin(nuxtApp => {
     5  const md = new MarkdownIt()
     6
     7  // 如果你需要使用其他插件,可以在这里配置
     8  // md.use(require('markdown-it-emoji'))
     9
    10  nuxtApp.provide('markdown', md)
    11})
  3. 在组件或页面中使用 markdown-it

    你可以在组件或页面中通过 useNuxtApp() 获取到 markdown-it 实例,并用它来解析 Markdown 内容。

     1<template>
     2  <div v-html="parsedContent"></div>
     3</template>
     4
     5<script setup>
     6import { ref, onMounted } from 'vue'
     7import { useNuxtApp } from '#app'
     8
     9const { $markdown } = useNuxtApp()
    10const content = ref('# Hello WorldnThis is markdown content.')
    11
    12const parsedContent = ref('')
    13
    14onMounted(() => {
    15  parsedContent.value = $markdown.render(content.value)
    16})
    17</script>

    这里,content 是你需要解析的 Markdown 字符串,parsedContent 是经过解析的 HTML 内容,会被绑定到模板中显示。

  4. (可选)添加更多 markdown-it 插件:

    如果你需要更多功能,比如 emoji 支持、表格支持等,可以安装相应的插件并在插件配置中使用它们。例如,安装 markdown-it-emoji 插件:

    npm install markdown-it-emoji

    然后在你的 markdown-it 插件配置中使用它:

     1// plugins/markdown-it.js
     2import MarkdownIt from 'markdown-it'
     3import emoji from 'markdown-it-emoji'
     4
     5export default defineNuxtPlugin(nuxtApp => {
     6  const md = new MarkdownIt()
     7  md.use(emoji)
     8
     9  nuxtApp.provide('markdown', md)
    10})

通过以上步骤,你就可以在 Nuxt 3 项目中使用 markdown-it 来处理 Markdown 内容了。

个人笔记记录 2021 ~ 2025