Sign up for Hasura Newsletter
Loading...

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:

githubsrc/components/Todo/TodoInput.js
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();
}}>
<input
className="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
  • ArrowBuild apps and APIs 10x faster
  • ArrowBuilt-in authorization and caching
  • Arrow8x more performant than hand-rolled APIs
Promo
footer illustration
Brand logo
© 2022 Hasura Inc. All rights reserved
Github
Titter
Discord
Facebook
Instagram
Youtube
Linkedin