跳过内容
API 参考文件约定mdx-components.js

mdx-components.js

mdx-components.js|tsx 文件是将 @next/mdx 与 App Router 一起使用必需的文件,没有它将无法工作。此外,您还可以使用它来 自定义样式

在项目的根目录中使用文件 mdx-components.tsx(或 .js)来定义 MDX 组件。例如,与 pagesapp 处于同一级别,或者在 src 内部(如果适用)。

mdx-components.tsx
import type { MDXComponents } from 'mdx/types'
 
export function useMDXComponents(components: MDXComponents): MDXComponents {
  return {
    ...components,
  }
}

导出

useMDXComponents 函数

文件必须导出单个函数,可以是默认导出或命名为 useMDXComponents

mdx-components.tsx
import type { MDXComponents } from 'mdx/types'
 
export function useMDXComponents(components: MDXComponents): MDXComponents {
  return {
    ...components,
  }
}

参数 components

在定义 MDX 组件时,导出函数接受一个参数 components。此参数是 MDXComponents 的实例。

  • 键是要覆盖的 HTML 元素的名称。
  • 值是要渲染的组件。

温馨提示:请记住传递所有其他没有被覆盖的组件(即 ...components)。

版本历史记录

版本更改
v13.1.2添加了 MDX 组件