如何使用 allMdx 查询中的“gatsby-plugin-mdx”渲染 MDX?

bat*_*roz 8 javascript markdown reactjs gatsby-plugin

我想直接从allMdx查询返回的列表中呈现 MDX 内容。我将“gatsbyjs”与“gatsby-plugin-mdx”一起使用。

我们来查询一下:

export const query = graphql`
  query MyQuery {
    allMdx {
      nodes {
        id
        body
        frontmatter {
          title
          slug
        }
      }
    }
  }
`;
Run Code Online (Sandbox Code Playgroud)

从官方文档中可以看出https://www.gatsbyjs.com/plugins/gatsby-plugin-mdx/#updating-page-templates <MDXRenderer>组件已被删除。所以不再可能做这样的事情:

{data.allMdx.nodes.map((n) => (
    <MDXRenderer>{n.body}</MDXRenderer>
))}
Run Code Online (Sandbox Code Playgroud)

相反,现在需要这样做:

function MyComponent({ children }) {
  return (
    <div>
      {children}
    </div>
  );
}
Run Code Online (Sandbox Code Playgroud)

但我想渲染 MDX,allMdx以便我有一个 MDX 帖子列表,例如,你们知道这是否可能以及如何做到吗?