在Gatsby应用程序的react组件中,我了解如何在graphql查询中使用上下文变量,例如:
export const tagPageQuery = graphql` query TagPage($tag: String) { site { siteMetadata { title } } allItem(filter: { tags: { in: [$tag] } }) { totalCount edges { node { id move videoUrl
$tag
是允许我过滤的字符串。我明白了。但是是否有某种方式可以在组件本身内部访问此值?我可以访问graphql查询获取的数据,但是无法获取Graphql之外的变量。我很乐意拥有它{context.tag}
或类似的东西,以便能够在我的内部使用该值h1
。我已经阅读了Gatsby GraphQL参考资料,没有骰子。感觉得到此值应该很容易,但是我想知道是否需要使用类似getContext
钩子的东西?
令人惊叹的10分钟小睡可以做什么!实际上,您可以使用此处详细介绍的pageContext属性访问上下文变量:https : //www.gatsbyjs.org/docs/creating-and-modifying-pages/#creating-pages-in-gatsby-nodejs
const TagPage = ({ data, classes , pageContext}) => {
在道具中添加pageContext使我可以访问$tag
。