Boa noite, segue atualização, o código agora avança até o log de número 005 e exibe no console a mensagem listada abaixo, deixei a postagem original para fins de pesquisa para outros colegas que possam ter o mesmo problema, segue a mensagem atual do console, grato:
TypeError: Cannot read property 'render' of undefined at ServerResponse.response.marko (/home/haguenmcleod/Backup20190927001/CursosInformatica/NodeJs/casaDoCodigoProjetoCursoModulo2/node_modules/marko/src/express.js:58:29) at livroDao.lista.then.livros (/home/haguenmcleod/Backup20190927001/CursosInformatica/NodeJs/casaDoCodigoProjetoCursoModulo2/src/app/controladores/livro-controlador.js:11:46) at
Mensagem original abaixo:
Boa noite, estou tentando terminar o primeiro controlador do curso, que deveria retornar na tela a listagem após o submit de um novo livro, entretanto o método lista(), da classe LivroControlador, parece não executar o comando const livroDao = new LivroDao(db); , conforme logs adicionados no código postado abaixo, esta parando no "log 003" e exibindo mensagem de que houve um problema na tela da aplicação, seguem os códigos, grato:
app.get('/livros', livroControlador.lista());
const LivroDao = require('../infra/livro-dao');
const db = require('../../config/database');
class LivroControlador{
lista(){
return function(req, resp) {
console.log('003 - Entrou no controlador da listagem de livros ########################');
const livroDao = new LivroDao(db);
const erros = validationResult(req);
console.log('004 - #################################################'),
livroDao.lista()
.then(livros => resp.marko(
console.log('005 - #################################################'),
require('../views/livros/lista/lista.marko'),
{
livros: livros
}
))
.catch(erro => console.log(erro));
};
}
}
module.exports = LivroControlador;
action do form.marko abaixo:
<form action="/livros" method="post">