Gibt es eine Möglichkeit, die GraphQL-Abfragen in einer Seitenkomponente zu ändern, je nachdem, ob die Site im Entwicklungs- oder Produktionsmodus ausgeführt wird?
Sie können den Abfragetext nicht direkt bearbeiten, aber Sie können unterschiedliche Kontexte übergeben, je nachdem, ob Sie sich im Entwicklungs- oder im Produktmodus befinden.
Wenn sich dies auf ein Problem bezieht, das unter https://github.com/gatsbyjs/gatsby/issues/10844#issuecomment -471349943 beschrieben ist
Erstellen Sie programmgesteuert eine Blog-Liste, damit Sie context
an die Abfrage übergeben können
createPage({
path: "/blog",
template: <some_template>,
context: {
draftBlacklist: process.env.NODE_ENV === `production` ? [true] : []
}
})
und dann in Abfrage:
query BlogListing($draftBlacklist: [String!]!) {
allMarkdownRemark(filter: {frontmatter: {draft: {nin: $draftBlacklist}}}) {
edges {
node {
frontmatter {
title
draft
}
}
}
}
Dies sollte alle Knoten in dev anzeigen und alle Knoten herausfiltern, wobei draft
true
in der Produktion auf netlify
(oder andere Arten von CI / CD) für Produktions-Builds verwenden, sollte dies funktionieren
Hilfreichster Kommentar
Sie können den Abfragetext nicht direkt bearbeiten, aber Sie können unterschiedliche Kontexte übergeben, je nachdem, ob Sie sich im Entwicklungs- oder im Produktmodus befinden.
Wenn sich dies auf ein Problem bezieht, das unter https://github.com/gatsbyjs/gatsby/issues/10844#issuecomment -471349943 beschrieben ist
Erstellen Sie programmgesteuert eine Blog-Liste, damit Sie
context
an die Abfrage übergeben könnenund dann in Abfrage:
Dies sollte alle Knoten in dev anzeigen und alle Knoten herausfiltern, wobei
draft
true
in der Produktion aufnetlify
(oder andere Arten von CI / CD) für Produktions-Builds verwenden, sollte dies funktionieren