Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Continuo recebendo Error: Cannot return null for non-nullable field Mutation.adicionarCliente.

Depois de realizar o passo a passo do video continuei recebendo o mesmo erro após definir o objeto no método adiciona() em cliente.js

Ele continua cadastrando no banco de dados normal e executando a query mas ainda aparece esse erro no GraphQL e no terminal

{
  "data": null,
  "errors": [
    {
      "message": "Cannot return null for non-nullable field Mutation.adicionarCliente.",
      "locations": [
        {
          "line": 2,
          "column": 3
        }
      ],
      "path": [
        "adicionarCliente"
      ]
    }
  ]
}

meus códigos:

 adiciona(item) {
    const { nome, cpf } = item
    const sql = `INSERT INTO Clientes(nome, CPF) VALUES('${nome}', '${cpf}')`

    return executaQuery(sql).then(resposta => 

                 ({
                  id: resposta.insertId,
                  nome,
                  cpf
                })
              )

    }
const executaQuery = (query) => {
  return new Promise((resolve, reject) => {

    conexao.query(query, (erro, resultados, campos) => {
      console.log('executou a query!')
      if (erro) {
        reject(erro) 
      } else {
        resolve(resultados) 
      }


    })

  })

}
const { GraphQLServer } = require('graphql-yoga')
const conexao = require('./infraestrutura/conexao')
const Tabelas = require('./infraestrutura/database/tabelas')

const Operacoes = require('./infraestrutura/operations')

conexao.connect(erro => {
  if (erro) {
    console.log(erro)
  }

  console.log('conectou no banco')

  Tabelas.init(conexao)
})

const Clientes = new Operacoes('cliente')

const resolvers = {
  Query: {
    status: () => "Servidor rodando!"
  },
  Mutation: {
    adicionarCliente: (root, params) => {
      Clientes.adiciona(params)
    }
  }
}

const servidor = new GraphQLServer({
  resolvers,
  typeDefs: './schema.graphql'
})

servidor.start(()=> console.log('Servidor ouvindo'))

1 resposta
solução!

Resolvido como instruído na aula 3.1 o nodemon não atualizou a query então ao continuar o curso eu voltei a tentar adicionar clientes novamente e funcionou

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software