Ich möchte Namensraum/Nest Query-Variablen wie folgt aus:Ist es möglich, verschachtelte/Namespace-Abfragevariablen in einer GraphQL-Abfrage zu verwenden?
query ($params: {$id: ID!}) {
getUser(id: $params.id) {
email
username
}
}
mit den Variablen:
{
"params": {
"id": "42"
}
}
aber es ist keine gültige Abfrage.
jedoch eine Abfrage wie:
query ($id: ID!) {
getUser(id: $id) {
email
username
}
}
mit den Variablen:
{
"id": "42"
}
wird gut funktionieren.
Der Grund, warum ich mag, dass von Router reagiert auf die gewickelte Komponente angelegt wird, von dieser zu tun ist, um automatisch in query options in die graphql
höhere Ordnung Komponente mit der Stütze params
ApolloReact zu senden. Diese Frage hat im Wesentlichen nichts mit Reverse-Router zu tun, abgesehen von der Tatsache, dass die params
Requisite von react-Router auf die Komponente angewendet wird.
ApolloReact wird versuchen, die Requisiten aus der Komponente zu verwenden, um das Variablenobjekt automatisch zu erstellen, und da id
in props
verschachtelt ist, kann es es nicht finden.
Die Alternative ist speziell wo zu definieren durch Definieren eines options
Methode, die ownProps
und gibt die Variablen Objekt in graphql
aber ich möchte es vermeiden, wenn möglich, finden id
erhält.
Vielen Dank für Ihre Antwort, ich versuche nicht, einen Eingang zu verwenden, das alles hält, sondern ich versuche, die Standard-Funktionalität zu nutzen, die Apollo Reagieren lautet: " Standardmäßig versucht graphql, fehlende Variablen aus der Abfrage von ownProps zu übernehmen ". –
Sicher! entfernte diesen Teil und fügte das tatsächliche Ergebnis hinzu, das Sie wollten, damit es mehr Sinn machte. – davidyaha