在 Gatsby 的生产构建中突出显示棱镜反应渲染器的问题

Issue with prism-react-renderer highlighting in production build in Gatsby

我在 Gatsby 中使用 prism-react-renderer 组件时遇到代码突出显示问题。我已按照 FormidableLabs/prism-react-renderer.

中的说明进行配置

在开发模式下一切正常,但是当我使用 gatsby build 命令构建生产版本时,pre 标签没有装饰棱镜 类 (class="prism-code language-python"不见了)。我的猜测是生产版本不包含正确的组件或 CSS,但我不知道从哪里开始寻找。

此外,当我在 7-8 个月前在另一个项目中使用相同的代码时,这个问题并不存在。所以这可能是过去几个月由于 plugin/component 更新而引入的问题。

随附两张屏幕截图 - 一张带有 gatsby develop,另一张带有 gatsby build

命令 I 运行 设置和安装必备项:

> gatsby new test-mdx-prism-rendering https://github.com/gatsbyjs/gatsby-starter-hello-world
> npm install --save gatsby-plugin-mdx @mdx-js/mdx @mdx-js/react
> npm install --save mdx-utils
> npm install --save prism-react-renderer

示例 GitHub 项目位于 subhashb/test-mdx-prism-rendering

在我试图深入挖掘时找到了答案。

此处讨论解决方法:https://github.com/ChristopherBiscardi/gatsby-mdx/issues/394

显然,gatsby-browser.js 中定义的 wrapRootElement 也应该在 gatsby-ssr.js 中可用。