【发布时间】:2019-04-19 10:01:23
【问题描述】:
使用 gatsby-node.js 和 createPages 我可以使用 graphql 查询 something 并使用该 something 作为页面上下文来创建页面。所以这些页面可以在他们的查询中使用那个 something 作为参数。
我面临的问题是我不想使用createPages。我对默认创建的页面(来自gatsby-plugin-page-creator)完全没问题,我只希望它们都拥有来自graphql的something作为上下文。
基本上我希望所有页面都可以使用全局上下文(我从 gatsby graphql 获得)。
有onCreatePage 钩子,但不幸的是,根据https://github.com/gatsbyjs/gatsby/issues/3121#issuecomment-348781341,graphql 在那里不可用。
【问题讨论】:
-
据我所知,您想要实现的目标尚不可能。页面查询从在
createPages调用gatsby-node.js中设置的上下文接收其参数。由于 Gatsby 解析graphql标记模板的方式,您不能直接将 args 传递给它(通过表达式插值)。 -
我也面临同样的挑战,我想我会在根模板中使用静态页面查询。
标签: gatsby