Logo

Funktion:

Verschachtelte Mutationen

Verschachtelte Mutationen

Mutations sind in GraphQL nur am Root-Typ verfügbar. Dadurch wird der Root-Typ stark überladen und enthält Felder, die nichts miteinander gemein haben, außer dass sie Mutations sind (was eine technische Angelegenheit ist, keine Interface-Design-Entscheidung).

Verschachtelte Mutationen machen das Schema logischer und einfacher zu durchsuchen, indem sie es ermöglichen, Mutations auf jedem Typ auszuführen, und nicht nur auf dem Root-Typ. Sie verbessern auch die Performance, indem du Daten auf dem Ergebnis einer anderen Mutation ändern kannst und so die Latenz durch mehrere Anfragen vermeidest.

Diese GraphQL-query zeigt eine verschachtelte Mutation:

mutation {
  createPost(input: {
    title: "First title"
  }) {
    status
    postID
    post {
      update(input: {
        title: "Second title",
        contentAs: { html: "Some content" }
      }) {
        status
        post {
          title
          content
          addComment(input: {
            commentAs: { html: "My first comment" }
          }) {
            status
            commentID
            comment {
              content
              date
            }
          }
        }
      }
    }
  }
}

Abonniere unseren Newsletter

Bleib über alle Updates zu Gato GraphQL auf dem Laufenden.