Ссылка на переменную GraphQL, используемую в запросе в шаблоне Гэтсби?

#javascript #graphql #gatsby

Вопрос:

Я объединяю все сообщения, у которых есть определенный тег в списке тегов:

 
export const Search = graphql`
  query SearchResults($tag: String = "") {
    allMarkdownRemark(filter: { frontmatter: { tags: { in: [$tag] } } }) {
      nodes {
        frontmatter {
          title
          date
        }
      }
    }
  }
`
 

Запрос отлично работает, но я также хочу иметь возможность динамически отображать запрашиваемый тег. Как я могу передать эту информацию?

Например: Результаты поиска по тегу: Java какое значение $tag будет указано в запросе graphql.

Я попытался извлечь из URL-адреса, но он отображается в узле, поэтому у меня нет доступа к объекту окна, и в любом случае он казался немного взломанным.

Ответ №1:

Я понял. Вход props.pageContext дает вам доступ к контекстной информации, передаваемой через gatsby-узел.