--- title: "Markdown 扩展示例" description: "本页面展示了 VitePress 提供的一些内置 markdown 扩展功能。" color: "#f53283" impression: "/assets/images/138124971_p0.webp" categories: tags: - markdown 语法 - 示例文章 - 组件示例 date: 2007-08-31T00:00:00Z --- # 语法高亮 VitePress 提供由 [Shiki](https://github.com/shikijs/shiki) 驱动的语法高亮功能,并附带行高亮等额外特性: **输入** ````md ```js{4} export default { data () { return { msg: '已高亮显示!' } } } ``` ```` **输出** ```js{4} export default { data () { return { msg: '已高亮显示!' } } } ``` # 自定义容器 **输入** ```md ::: info 这是一个信息框。 ::: ::: tip 这是一个提示。 ::: ::: warning 这是一个警告。 ::: ::: danger 这是一个危险警告。 ::: ::: details 这是一个详情块。 ::: ``` **输出** ::: info 这是一个信息框。 ::: ::: tip 这是一个提示。 ::: ::: warning 这是一个警告。 ::: ::: danger 这是一个危险警告。 ::: ::: details 这是一个详情块。 ::: # 组件使用范例 以下是项目中可用组件的使用示例: ### MaterialButton 组件 (Button.vue) MaterialButton 组件是一个通用的按钮组件,支持多种样式和功能。 #### 属性列表 | 属性 | 类型 | 默认值 | 可选值 | 描述 | | ---- | ---- | ---- | ---- | ---- | | `shape` | `string` | `"round"` | `"round"`, `"square"` | 按钮形状 | | `size` | `string` | `"s"` | `"xs"`, `"s"`, `"m"`, `"l"`, `"xl"` | 按钮尺寸 | | `color` | `string` | `"filled"` | `"elevated"`, `"filled"`, `"tonal"`, `"outlined"`, `"standard"`, `"text"` | 按钮颜色样式 | | `icon` | `string` | - | Material Icons 名称 | 按钮图标 | | `href` | `string` | - | 任意URL | 如果提供,按钮将渲染为链接 | | `target` | `string` | `"_blank"` | `"_blank"`, `"_self"`, `"_parent"`, `"_top"` | 链接打开方式 | #### 使用示例 ```vue 点击我 收藏 访问网站 超小按钮 大按钮 方形按钮 轮廓按钮 强调按钮 提升按钮 文本按钮 ``` ### Card 组件 (Card.vue) Card 组件用于展示内容卡片,支持多种变体和样式。 #### 属性列表 | 属性 | 类型 | 默认值 | 可选值 | 描述 | | ---- | ---- | ---- | ---- | ---- | | `variant` | `string` | `"feed"` | `"feed"` | 卡片变体 | | `size` | `string` | `"m"` | `"s"`, `"m"`, `"l"` | 卡片尺寸 | | `color` | `string` | `"filled"` | `"elevated"`, `"filled"`, `"outlined"` | 卡片颜色样式 | | `title` | `string` | - | 任意字符串 | 卡片标题 | | `description` | `string` | - | 任意字符串 | 卡片描述 | | `date` | `string` | - | 日期字符串 | 发布日期 | | `tags` | `string[]` | - | 字符串数组 | 标签列表 | | `category` | `string[]` | - | 字符串数组 | 分类列表 | | `impression` | `string[]` | `[]` | 图片URL数组 | 印象图片 | | `href` | `string` | - | 任意URL | 卡片链接 | | `downloadable` | `boolean` | `false` | `true`, `false` | 是否可下载 | #### 使用示例 ```vue ``` ```vue ``` ```vue ``` ```vue ``` ### ButtonGroup 组件 (ButtonGroup.vue) ButtonGroup 组件用于将多个按钮组合在一起,支持水平和垂直布局。 #### 属性列表 | 属性 | 类型 | 默认值 | 可选值 | 描述 | | ---- | ---- | ---- | ---- | ---- | | `links` | `ExternalLink[]` | `[]` | 链接对象数组 | 按钮链接列表 | | `size` | `string` | `"s"` | `"xs"`, `"s"`, `"m"`, `"l"`, `"xl"` | 按钮尺寸 | | `layout` | `string` | `"horizontal"` | `"horizontal"`, `"vertical"` | 布局方向 | #### ExternalLink 类型 ```typescript interface ExternalLink { type: string; // 链接类型:'download' 或 'normal' label: string; // 按钮标签文本 link: string; // 链接地址 } ``` #### 使用示例 ```vue ``` # 更多信息 查看 [完整 markdown 扩展列表](https://vitepress.dev/guide/markdown) 的文档。