问题标签 [gatsby-plugin-mdx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
gatsby - gatsby-plugin-mdx 无法同时解析来自 frontmatter 和 body 的图像
我遇到问题的仓库是https://github.com/agenciaglobal/web 这是我的 gatsby-config.js。至少是有关的部分。
整件事都在这里 https://github.com/agenciaglobal/web/blob/master/gatsby-config.js 我的网站正在运行!但我无法使图像正常工作
这是我的收藏
然后实际新闻看起来像这样
这是一个工作配置。但是 cms 永远不会写出这样的路径。这里的问题是,当使用 CMS 插入数据时,它将始终使用public_folder
.
因此,如果我使用assets
,它将在图像字段上工作,但在降价正文上失败。如果我使用../assets
它,它将在降价正文上工作,但在图像 frontmatter 字段上失败
如果我尝试,图像字段将始终失败../assets/whatever.png
。所以我认为我唯一的出路是让降价的主体识别assets/image.png
,而不仅仅是../assets/image.png
. 我怎样才能做到这一点?
markdown - 由于代码解析,mdx 中的代码块抛出错误
我最近将我的 gatsby 帖子转换为使用gatsby-plugin-mdx
,并且在大多数情况下,转换是无缝的,但是对于我的一些帖子,我遇到了一个问题 - 即代码块中的代码正在被解析并且未能建立这些职位。
这发生在一篇文章中,我正在写一篇关于类和功能性反应组件的文章,在我的一个示例中,我故意创建了一些错误的标记来说明一个观点。`gatsby-plugin-mdx` *似乎*正在解析这个然后失败,因为它是错误的......
我怎样才能解决这个问题?有没有办法逃脱这些块或者我需要使用不同的插件?
配置:
带有故意错误的降价(它包含在反引号中,但不确定如何在降价中逃脱它们!):
gatsby - Gatsby MDX slugs 无法导航,名称中包含目录
创建的 Slugs 包含根目录,因此传递 slug 到<Link to={slug}>
被破坏。页面已创建,但链接到它们的 slug 不必要地包含包含文件夹,无论是帖子还是页面。
可导航的页面是:
文件位置是:
** 问题 - 创建 slug **
** 期望的结果 **
使用插件:
markdown - 有没有办法定义新的 Markdown (MDX) 语法并将其与现有标签相关联?
有没有办法为 Markdown 定义新语法(#
, **
, -
)并将其与Gatsby 中的现有标签( strong
, )一起使用?emphasis
我想_
用双下划线 ( ) 替换现有的强调语法 ( __
)。
我正在处理在自定义工具中实现的类似 Markdown 的语法,它__
用于斜体。我可以在处理之前手动替换 MDX 文件中的语法,但我觉得这是一个 hacky 解决方案。
我指的是自定义组件的MDXProvider
文档。我查看了remark和rehype插件,但找不到任何可以用来更改语法的东西。
在 MDX、Gatsby 或 React 中可能有更好的方法来实现这一点。任何指针/帮助表示赞赏。
gatsby - Gatsby 中的阴影/自定义父主题插件
我正在为我自己的博客使用 Gatsby 主题@lekoarts/gatsby-theme-minimal- blog。该主题还有一个父核心主题@lekoarts/gatsby-theme-minimal-blog-core,它使用了gatsby-plugin-mdx插件。
在我自己的博客中,我想更改插件gatsby-plugin-mdx
的选项,例如设置
我尝试gatsby-plugin-mdx
在我自己的博客中导入,gatsby-config.js
但它不起作用我在解析现有.mdx
文件时遇到错误。
还试图通过使用相同的内容创建但没有效果来隐藏gatsby-config.js
核心主题的文件。src/@lekoarts/gatsby-theme-minimal-blog-core/gatsby-config.js
linkImagesToOriginal: true
如何更改父主题的插件选项?
核心主题的gatsby-config.js
文件如下:
gatsby-config.js
我的博客
graphql - Gatsby 的 markdown 文件之间的映射
我正在创建一个多作者网站(使用gatsby-plugin-mdx
)并具有以下文件结构:
在post
页面的最前面,我有很多作者,比如
我在作者的降价文件的frontmatter中有作者的名字。
我想设置架构,以便在查询帖子时,我还可以获得作者的详细信息(姓名、电子邮件等)。
通过阅读此页面,我似乎需要创建一个自定义解析器......但我看到的所有示例都将所有作者都放在一个json
文件中(所以你有两个集合,MarkdownRemark
并且AuthorJson
......虽然我认为我的所有帖子都是成员正在MarkdownRemark
收集中。
非常感谢!
javascript - DigitalGarden 笔记页面创建期间的 GraphQL 查询投诉
我正在尝试通过了解 Maggie Appleton 网站 (maggieappleton.com) 的运作方式来学习如何在 GatsbyJS 中构建数字花园,这是一个了不起的网站 imo。
mdx 笔记根据其性质(书籍、论文、插图或数字花园笔记)分类在不同的文件夹中。它们位于content
文件夹中。
一般文件夹结构如下:
据我了解:在 中gatsby-node.js
,createPages
首先查询frontmatter 和note 的内容,并根据特定模板(在模板文件夹中找到)生成页面。
这适用于所有页面,除了数字花园的注释。在这种情况下,必须在音符之间创建双向链接,这就是 Aengus McMillin 的 gatsby-them-brain 插件发挥作用的地方。
节点首先由onCreateNode
插件创建并由插件使用以创建双向链接结构。我不确定如何生成注释页面(我相信通过 中的 MDXprovider 组件BrainNote.js
)。
在运行 gatsby develop 时,我面临以下问题:
gatsby develop 工作正常,但从未生成注释页面。
notesQuery
in似乎工作,gatsby-node.js
因为笔记瓷砖正确显示在首页和数字花园页面上。但是,注释本身无法按照插件的逻辑和noteTemplate.js
.
一定有我遗漏的东西,任何帮助将不胜感激!
重现步骤:
以下是gatsby-node.js
内容:
BrainNote.js
Brain.js
和noteTemplate.js
node.js - 出了点问题,查询留在了编译的代码中
按照 YouTube教程开始学习 Gatsby 。我已按照教程中所示的每个步骤进行操作。所以我正处于创建帖子列表页面的阶段。
帖子列表页面将有 3 个帖子,另一个将通过分页获得。并且会按降序排列。
我收到如下错误:
gatsby-node.js 文件:
allPosts.js 文件:
reactjs - 带有 rehype-autolink-headers 的 gatsby-plugin-mdx 仅适用于 wrap 选项
我正在尝试使用 Gatsby + MDX 设置我的站点。我正在查看此处的文档并希望使用autolink-header-option
. 我已经尝试为此使用 rehype 和 remark 插件,但我只能让 Rehype 插件工作并且只能使用该wrap
选项。我更喜欢标题之前的链接的 GitHub(默认)样式。
我正在使用以下配置并在更新文件后gatsby-config.js
清除.cache
并public
确保没有缓存任何内容。此外,我没有收到任何错误,一切都成功构建并运行,只是没有任何指向标题的链接。
更新
在尝试了多种配置之后,我能够让它按预期工作的方式是使用不同的插件配置。
两者gatsbyRemarkPlugins
和plugins
都是必需的:https ://github.com/gatsbyjs/gatsby/issues/15486