Pessoal, estou tomando esse erro no console quando tento salvar um novo livro... O que pode estar errado?
TypeError: Cannot read property 'titulo' of undefined
Pessoal, estou tomando esse erro no console quando tento salvar um novo livro... O que pode estar errado?
TypeError: Cannot read property 'titulo' of undefined
Orlando, boa tarde!
Qual é o valor que você tem no seu livro
? Acredito que ele está vazio
Aguardo sua resposta e bons estudos!
Boa tarde, Orlando! Como vai?
Como o Felipe disse anteriormente o livro
deve estar indefinido! Contudo, só saberemos a causa exata vendo o seu código! Vc poderia compartilhar o projeto completo com a gente colocando ele no github e mandando o link aqui? Assim poderemos tentar te ajudar de forma mais efetiva!
Outro detalhe importante! Em que momento esse erro ocorre? O que vc tentou fazer?
Qualquer coisa é só falar!
Grande abraço e bons estudos, meu aluno!
Boa tarde, Felipe, tudo certo?
Segue minha classe DAO:
adiciona(livro) {
return new Promise((resolve, reject) => {
this._db.run(`
INSERT INTO livros (
titulo,
preco,
descricao
) values (?,?,?)
`,
[
livro.titulo,
livro.preco,
livro.descricao
],
function (err) {
if (err) {
console.log(err);
return reject('Não foi possível adicionar o livro!');
}
resolve();
}
)
});
}
e meu arquivo de rotas:
class LivroDao{
constructor(db) {
this._db = db;
}
app.post('/livros',function(req,resp){
const livroDao = new LivroDao(db)
livroDao.adiciona(req.body)
.then(resp.redirect('/livros'))
.catch(erro => console.log(erro));
});
@Gabriel, o erro acontece quando tento adicionar um novo livro no banco.
Segue o link para download do código: https://drive.google.com/file/d/18C1gThaAsxsw88dXVOuJT_E19LM5BMjN/view?usp=sharing
Pessoal, descobri o problema: No arquivo custom-express.js o método use() com a instância de bodyParser como parâmetro precisa ser declarado antes do objeto que recebe as rotas.