Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Finalizando Curso - Erro ao Editar Cliente

Olá pessoas, mesmo depois de rever e tentar várias coisas, e também pegando o Projeto Final do professor no final do curso, continua dando o mesmo erro, gostaria de uma ajuda.

Ao clicar na tela de editar os dados da pessoa, da o seguinte erro:

TypeError: Cannot read property 'nome' of undefined
    at atualizaCliente-controller.js:13

vou enviar aqui abaixo, como esta montado o meu código.

import { clienteService } from '../service/cliente-service.js';


(async () => { 
  const pegaURL = new URL(window.location)

  const id = pegaURL.searchParams.get('id')

  const inputNome = document.querySelector('[data-nome]')
  const inputEmail = document.querySelector('[data-email]')
  try { 
    const dados = await clienteService.detalhaCliente(id);
    inputNome.value = dados.nome
    inputEmail.value = dados.email
  }
  catch(erro){
    console.log(erro)
    window.location.href = "../telas/erro.html"
  }


  const formulario = document.querySelector('[data-form]')


  formulario.addEventListener('submit', async (evento)=> { 
    evento.preventDefault()
    try {
      await clienteService.atualizaCliente(id, inputNome.value, inputEmail.value)
      window.location.href = "../telas/edicao_concluida.html"
    }
    catch(erro){
      console.log(erro)
      window.location.href="../telas/erro.html"
    }
  })
})()

e a linha 13 que se refere o erro é a seguinte:

    inputNome.value = dados.nome
3 respostas
solução!

Fala ai Anderson, tudo bem? Como está a função detalhaCliente do clienteService? Parece que ela não está retornando nada, verifica se não faltou um return.

Espero ter ajudado.

Muito obrigado Matheus!!!! Exatamente o que você disse! Que vacilo, dei mole demais , nem percebi que estava faltando...

o código que faltava era exatamente esse no detalhaCliente:

return resposta.json()

Magina Anderson, não foi a primeira e não sera a ultima vez kkkkk

Abraços e bons estudos.