Variables de consulta
¿En qué consiste una variable en el contexto GraphQL?
GraphQL tiene una manera genial de factorizar los valores dinámicos fuera de la consulta, y de pasarlos como diccionarios independientes. Estos valores se denominan variables. En nuestro caso, vamos a definir el objeto que va a insertarse como mutación.
Vamos entonces a definir la mutación Graphql a utilizar.
Abra src/components/Todo/TodoInput.js
y añada el siguiente código:
import React from 'react';+ import { gql } from "@apollo/client";+ const ADD_TODO = gql `+ mutation ($todo: String!, $isPublic: Boolean!) {+ insert_todos(objects: {title: $todo, is_public: $isPublic}) {+ affected_rows+ returning {+ id+ title+ created_at+ is_completed+ }+ }+ }+ `;const TodoInput = ({isPublic=false}) => {return (<form className="formInput" onSubmit={(e) => {e.preventDefault();}}><inputclassName="input"placeholder="What needs to be done?"/><i className="inputMarker fa fa-angle-right" /></form>);};export default TodoInput;
¿Qué hace esta mutación?
La mutación se inserta en la tabla todos
con la variable $objets, que es pasada como un tipo de tarea pendiente.
¡Maravilloso! Acabamos de definir nuestra primera mutación Graphql.
Did you find this page helpful?
Start with GraphQL on Hasura for Free
Build apps and APIs 10x faster
Built-in authorization and caching
8x more performant than hand-rolled APIs

