0

prism-react-renderer在 Gatsby 中使用组件时,我遇到了代码突出显示的问题。我已经按照FormidableLabs/prism-react-renderer中的说明进行了配置。

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

此外,当我在另一个项目中使用相同的代码 7-8 个月时,这个问题也不存在。因此,由于插件/组件更新,这可能是过去几个月引入的问题。

附上两张截图 - 一张带有gatsby develop,另一张带有gatsby build.

我运行的命令来设置和安装先决条件:

> 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

开发模式截图 生产构建中的屏幕截图

4

1 回答 1

0

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

解决方法在这里讨论:https ://github.com/ChristopherBiscardi/gatsby-mdx/issues/394

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

于 2021-01-11T02:01:50.317 回答