Wie kann eine Graphql-Mutation ein Array von Argumenten mit apollo server express akzeptieren?

Jørgen Vik

Ich erstelle einen Warenkorb in meinem Frontend und möchte alle Artikel im Warenkorb als Array an meine Mutation addLicense in meinem Backend übergeben, damit ich nicht mehrere API-Aufrufe durchführen muss. Ist das möglich? Wenn ja, wie oder welche Möglichkeiten habe ich?

Ich habe versucht, die Argumente wie folgt in eckige Klammern zu setzen

extend type Mutation {
    addLicense([
        licenseType: String!
        licenseAmount: String!
        isActive: Boolean
        expirationDate: Date!
    ]): License!
}

Ich habe auch versucht, den Objekttyp als Argument festzulegen

extend type Mutation {
    addLicense(
    license: [License]
): License!

Beim ersten Versuch wird dieser Fehler ausgegeben

/app/node_modules/graphql/language/parser.js:1463
throw (0, _error.syntaxError)(lexer.source, token.start, "Expected ".concat(kind, ", found ").concat((0, _lexer.getTokenDesc)(token)));
^
GraphQLError: Syntax Error: Expected Name, found [
at syntaxError 
(/app/node_modules/graphql/error/syntaxError.js:24:10)

Der andere Versuch wirft diesen Fehler

Error: The type of Mutation.addLicense(license:) must be Input Type but got: [License].
Jørgen Vik

Ich habe einige Ratschläge bei GraphQL Slack bekommen. Ich habe es gelöst, indem ich einen neuen Eingabetyp hinzugefügt habe.

input LicenseInput {
    id: ID
    licenseType: String!
    licenseAmount: String!
    isActive: Boolean
    expirationDate: Date
    course: String!
    organizationID: String!
    price: Int!
}

Ich konnte dann meine Mutation so hinzufügen

extend type Mutation {
    addLicense(
        license: [LicenseInput] <-
    ): License!
}

Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.

Bei Verstößen wenden Sie sich bitte [email protected] Löschen.

bearbeiten am
0

Lass mich ein paar Worte sagen

0Kommentare
LoginNach der Teilnahme an der Überprüfung

Verwandte Artikel

Wie kann eine Klasse mit generischem Typ ein Array von verschiedenen generischen Typen akzeptieren?

Wie kann eine graphql-Mutation eine von Apollo Client überwachte Abfrage automatisch aktualisieren?

Wie kann ich ein Array als Liste von Argumenten an eine Funktion mit unterschiedlicher Anzahl von Parametern in C übergeben?

Wie rufe ich eine GraphQL-Abfrage / Mutation von einem Express-Server-Backend auf?

Wie kann ein Stapel von Push-Down-Automaten eine Zeichenfolge mit unbegrenzter Größe akzeptieren?

Wie kann man ein vollständiges GraphQL-Schema von einem Apollo Server-Endpunkt erhalten?

GraphQL typedef-Mutation muss ein Array akzeptieren

Warum Express (oder eine andere Integration) mit Apollo GraphQL Server?

Wie lade ich eine Variable mit den Argumenten von clipget () in ein Array aus einzelnen Zeichen?

Wie man ein aufgelöstes Array mit dem Graphql Apollo-Server konditioniert (nachbearbeitet)

Wie kann eine PostgreSQL-Funktion eine Ganzzahl oder ein Array von Ganzzahlen für dieselbe Funktion akzeptieren?

Wie stelle ich den Apollo GraphQL-Server so ein, dass er ein Objekt als Variable für eine Mutation akzeptiert?

Wie kann man mit GraphQL + Apollo Client einen totalCount nach der Mutation zurückgeben?

Wie kann ein Array / verschachteltes Feld "ausgegeben" werden, wenn eine Update-Mutation in Graphcool / GraphQL ausgegeben wird?

Wie kann ich ein SQL Server-Datenbankschema durchsuchen, um StoredProcs mit einem bestimmten Satz von Argumenten zu finden?

Kann eine Apollo-Mutation ein benutzerdefiniertes Ergebnisobjekt zurückgeben?

Wie erstelle ich mit GraphQL eine Mutation für ein verschachteltes Objekt?

TypeError: Die Eigenschaft undefined kann nicht gelesen werden. GraphQL-Mutation mit Apollo Server und Sequelize

Wie kann man ein Objekt mit dem Funktionstyp mit einer variablen Anzahl von Argumenten in JSDoc annotieren?

Wie kann ich Rails-Parameter erhalten, um ein Array von Strings zu akzeptieren?

Wie sende ich eine GraphQL-Mutation von einem Server zu einem anderen?

Wie übergebe ich ein State-Array mit mehreren Objekten als Parameter an die graphql-Mutation?

Wie erstelle ich ein Abonnement mit Argumenten in GraphQL korrekt?

Kann eine Funktion ein Tupel mit einer untergrabenen Anzahl von Argumenten empfangen?

GET-Abfrage fehlt: Implementieren von GraphQL mit Apollo auf einem Express-Server

So strukturieren Sie eine GraphQL-Mutation beim Umgang mit einem Array von Objekten

Undefinierte Argumente für eine Mutation mit Apollo-Server

Wie kann ich meinem Apollo-Server-Spielplatz eine Freigabe zur Option GraphQL Bin hinzufügen?

Kann ich ein Array als Argumente an eine Methode mit variablen Argumenten in Java übergeben?

TOP Liste

  1. 1

    Modbus Python Schneider PM5300

  2. 2

    Glassfish v3.0.1 im Vergleich zu Oracle GlassFish Server 3.0.1 - Gibt es einen technischen Grund, die kommerzielle Version zu verwenden?

  3. 3

    Wie schließe ich mehrere Ordner mit der Variablen EXTRA_ARGS aus?

  4. 4

    Wie kann eine gleichmäßige Lastverteilung in ElasticSearch mit Indizes mit unterschiedlicher Anzahl von Shards erreicht werden?

  5. 5

    Wie kann man eine Multi-Container-Anwendung in Steuerkarten erstellen?

  6. 6

    ElasticSearch - Knotensperren konnten nicht abgerufen werden

  7. 7

    Python: Spalten mit demselben Namen zusammenführen, wobei der Mindestwert beibehalten wird

  8. 8

    Elasticsearch startet nicht nach dem Laden in viele Daten

  9. 9

    Ärgerliches Problem mit yaml, das ich nicht lösen kann

  10. 10

    Wie Verwenden von Httpclient mit jedem SSL-Zertifikat, egal wie „schlecht“ es ist

  11. 11

    Wie vergleicht man scala.xml-Knoten richtig?

  12. 12

    ElasticSeach Auto Complete mit dem Vervollständigungsvorschlag, um das vollständige Dokument zurückzugeben

  13. 13

    Wie füge ich eine Spalte in einer Zeile in der Ansible Jinja2-Vorlage mit der for-Schleife hinzu?

  14. 14

    HTTPS-Verbindung mit Moneris-Servern in Curl

  15. 15

    Unity Build-Fehler: Der Name 'EditorUtility' ist im aktuellen Kontext nicht vorhanden

  16. 16

    Bester Crawler, um festzustellen, ob er mit Technologien gebaut wurde?

  17. 17

    So erhalten Sie eine gleichmäßige Höhe für alle Eingabefelder

  18. 18

    Wie kann ich den Kaskadenmodus global einstellen?

  19. 19

    Eclipse Oxygen - Projekte verschwinden

  20. 20

    Wie konvertiere ich einen Vektor von Bytes (u8) in eine Zeichenfolge?

  21. 21

    ElasticSearch BulkShardRequest ist aufgrund von org.elasticsearch.common.util.concurrent.EsThreadPoolExecutor fehlgeschlagen

heißlabel

Archiv