¿Es posible mientras tanto utilizar el resultado de una mutación de GraphQL como parámetro para otra mutación?
Me gustaría crear un usuario y su dirección juntos en una sola llamada.
Primero escribo la dirección y luego tomo la identificación de la dirección para la creación del usuario. Rellenar los datos necesarios a través de las entradas funciona perfectamente
¿Es esto posible sin desencadenar una nueva mutación del cliente?
const createUser = gql` mutation createUser( $user: createUserInput! $address: createAddressInput! ) { createAddress(input: $address) { address { id } } createUser(input: $user ) { user { id username } } } `
No, esto no es posible. Debe realizar dos solicitudes secuenciales del cliente o adaptar la implementación de su servidor. Recomiendo este último.
Debe cambiar su esquema para que el tipo CreateUserInput
no solo acepte un addressId: ID
sino que también pueda aceptar un objeto newAddress: CreateAddressInput
, que luego usará para crear una nueva dirección antes de crear un nuevo usuario.