3
respostas

Erro: The "path" argument must be of type string. Received undefined

Alguém pode me informar o porque desse erro, não consigo postar um pet e ele me retorna esse erro no console. Insira aqui a descrição dessa imagem para ajudar na acessibilidade Aba de PetsInsira aqui a descrição dessa imagem para ajudar na acessibilidade Insira aqui a descrição dessa imagem para ajudar na acessibilidade Insira aqui a descrição dessa imagem para ajudar na acessibilidade Insira aqui a descrição dessa imagem para ajudar na acessibilidade

3 respostas

Isa, sua classe Pet ta um pouco confusa, voce esta instanciando um novoPet dentro da classe Pet. Isso nao deveria acontecer, ja que uma class serve ja pra isso, pra voce instanciar algo.

Exemplo:

Dentro da classe Pet voce vai colocar um constructor para os dados que devem ser passados:

constructor(caminho, nome) {
    this.caminho = caminho;
    this.nome = nome;
}

isso pode ser colocado logo apos o class Pet {

no metodo adiciona(pet) voce nao precisa mais passar um pet agora, por que a sua propria classe Pet ja tem os dados.

o metodo adiciona vai ficar assim:

adiciona() {
    const query = 'INSERT INTO Pets SET ?'
    uploadDeArquivo(this.imagem, this.nome, (novoCaminho) => {
    conexao.query(query, {this.nome, this.caminho}, erro => {
        if(erro) {
        console.log(erro);
        res.status(400).json(erro)
    }
    else {
        res.status(200).json(pet)
    })

Agora o metodo adiciona nao precisa receber um pet, quem vai receber um pet ou os dados do pet agora é o controller ou seja lá qual for o documento que está usando a classe pet.

no documento controller voce vai instanciar um pet assim:

const caminho = 'c:/isadora/....'
const nome = 'nomeDaImagem'
const pet = new Pet(caminho, nome);
pet.adiciona()

Espero ter ajudado Isa! Tenta isso e nos mantem atualizados! Manda pra nós um print do controller que esta usando a classe Pet, talvez o problema esteja lá também!

O meu controller está assim, mas ainda não deu certo, creio que vou assistir o curso outra vez pra ver se faltou algum entendimento. Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Que pena que nao deu certo Isa, se precisar de um reforço pra entender o codigo é só chamar!