拾忆🍂拾忆🍂
  • cpp
  • MySQL
  • Oracle
  • PostgreSQL
  • MyBatis
  • API升级
  • HMOS
  • 百变小组件
  • hdc
  • 元服务
  • Java
  • MinIO
  • Stream
  • JSP & Struts2
  • Spring
  • FFmpeg
  • Linux
  • Git
  • Nginx
  • Ollama
  • Adobe Audition
  • Aseprite
  • Excel
  • Markdown基本用法
  • MuseScore 4.x
  • UVR
  • Windows
  • emoji-cheat-sheet
  • IDE快捷键
  • obs-studio
  • YOLO
  • Python
  • VuePress 2.x
  • 内置组件
  • markdown-container
  • markdown-ext
  • markdown-hint
  • markdown-preview
  • markdown-tab
  • Markdown扩展语法
  • 插件配置
  • prismjs
  • 样式
  • CSS
  • JS
  • TS
  • Vue3
主页
梦的开始🌅
  • cpp
  • MySQL
  • Oracle
  • PostgreSQL
  • MyBatis
  • API升级
  • HMOS
  • 百变小组件
  • hdc
  • 元服务
  • Java
  • MinIO
  • Stream
  • JSP & Struts2
  • Spring
  • FFmpeg
  • Linux
  • Git
  • Nginx
  • Ollama
  • Adobe Audition
  • Aseprite
  • Excel
  • Markdown基本用法
  • MuseScore 4.x
  • UVR
  • Windows
  • emoji-cheat-sheet
  • IDE快捷键
  • obs-studio
  • YOLO
  • Python
  • VuePress 2.x
  • 内置组件
  • markdown-container
  • markdown-ext
  • markdown-hint
  • markdown-preview
  • markdown-tab
  • Markdown扩展语法
  • 插件配置
  • prismjs
  • 样式
  • CSS
  • JS
  • TS
  • Vue3
主页
梦的开始🌅
  • 「从开始,到永久」
  • C艹

    • cpp
  • Database

    • MySQL
    • Oracle
    • PostgreSQL
    • MyBatis
  • HarmonyOS

    • API升级
    • HMOS
    • 百变小组件
    • hdc
    • 元服务
  • Java

    • Java
    • MinIO
    • Stream
    • JSP & Struts2
    • Spring
  • Linux

    • FFmpeg
    • Linux
    • Git
    • Nginx
  • LLM

    • Ollama
  • Others

    • Adobe Audition
    • Aseprite
    • Excel
    • Markdown基本用法
    • MuseScore 4.x
    • UVR
    • Windows
    • emoji-cheat-sheet
    • IDE快捷键
    • obs-studio
    • YOLO
  • Python

    • Python
  • VuePress

    • VuePress 2.x
    • 内置组件
    • markdown-container
    • markdown-ext
    • markdown-hint
    • markdown-preview
    • markdown-tab
    • Markdown扩展语法
    • 插件配置
    • prismjs
    • 样式
  • Web

    • CSS
    • JS
    • TS
    • Vue3
  • 主页

markdown-container

为你的 VuePress 站点注册自定义容器。

该插件简化了 markdown-it-container 的使用方法,但同时也保留了其原本的能力。

使用方法

npm i -D @vuepress/plugin-markdown-container@next
.vuepress/config.ts
import { markdownContainerPlugin } from '@vuepress/plugin-markdown-container'

export default {
  plugins: [
    markdownContainerPlugin({
      // 配置项
    }),
  ],
}

容器语法

::: <type> [info]
[content]
:::
  • type 是必需的,应通过 type 配置项来指定。
  • info 是可选的,其默认值可以通过 locales 的 defaultInfo 配置项来指定。
  • content 可以是任何合法的 Markdown 内容。

提示

该插件可以被多次使用,以便支持不同类型的容器。

配置项

type

  • 类型:string

  • 必填:是

  • 详情:

    容器的类型。

    它将会被用作 markdown-it-container 的 name 参数。

locales

  • 类型:Record<string, { defaultInfo: string }>

  • 默认值:{}

  • 详情:

    容器在不同 locales 下的默认 info。

    如果没有指定该配置项,默认 info 会使用大写的 type。

  • 示例:

.vuepress/config.ts
export default {
  plugins: [
    markdownContainerPlugin({
      type: 'tip',
      locales: {
        '/': {
          defaultInfo: 'TIP',
        },
        '/zh/': {
          defaultInfo: '提示',
        },
      },
    }),
  ],
}
  • 参考:
    • 指南 > 多语言支持

before

  • 类型:(info: string) => string

  • 默认值:

    ;(info: string): string =>
      `<div class="custom-container ${type}">${info ? `<p class="custom-container-title">${info}</p>` : ''}\n`
    
  • 详情:

    一个用于渲染容器起始标签的函数。

    第一个参数是 容器语法 的 info 部分。

    如果你没有设置 after 配置项,则该配置项也不会生效。

after

  • 类型:(info: string) => string

  • 默认值:

    ;(): string => '</div>\n'
    
  • 详情:

    一个用于渲染容器结束标签的函数。

    第一个参数是 容器语法 的 info 部分。

    如果你没有设置 before 配置项,则该配置项也不会生效。

render

  • 类型:

    type MarkdownItContainerRenderFunction = (
      tokens: Token[],
      index: number,
      options: unknown,
      env: MarkdownEnv,
      self: Renderer,
    ) => string
    
  • 详情:

    markdown-it-container 的 render 配置项。

    该插件使用了一个默认的 render 函数。但如果你指定了该配置项,那么默认的 render 函数就会被替换掉,此时 locales、before 和 after 配置项都会被忽略。

validate

  • 类型:(params: string) => boolean

  • 详情:

    markdown-it-container 的 validate 配置项。

marker

  • 类型:string

  • 默认值:':'

  • 详情:

    markdown-it-container 的 marker 配置项。

最近更新: 2025/11/6 16:36
Contributors: Enlin
Prev
内置组件
Next
markdown-ext