diff --git a/apps/docs/app/[[...mdxPath]]/page.tsx b/apps/docs/app/[[...mdxPath]]/page.tsx new file mode 100644 index 0000000..78f5067 --- /dev/null +++ b/apps/docs/app/[[...mdxPath]]/page.tsx @@ -0,0 +1,31 @@ +import { generateStaticParamsFor, importPage } from "nextra/pages"; +import { useMDXComponents as getMDXComponents } from "../../mdx-components"; + +export const generateStaticParams = generateStaticParamsFor("mdxPath"); + +/** Nextra Docs Theme 在运行时会提供 `wrapper`;类型上可能为 optional。 */ +const Wrapper = getMDXComponents().wrapper!; + +type PageProps = { params: Promise<{ mdxPath?: string[] }> }; + +export async function generateMetadata(props: PageProps) { + const params = await props.params; + const { metadata } = await importPage(params.mdxPath); + return metadata; +} + +export default async function Page(props: PageProps) { + const params = await props.params; + const { + default: MDXContent, + toc, + metadata, + sourceCode, + } = await importPage(params.mdxPath); + + return ( + + + + ); +}