Ao acessar minha página de livros recebo o erro abaixo no console:
GET http://localhost:3000/estatico/js/remove-livro.js net::ERR_ABORTED 404 (Not Found)
Já efetuei a configuração dos arquivos estáticos no custom-express.js:
require('marko/node-require').install();
require('marko/express');
const express = require('express');
const app = express();
const bodyParser = require('body-parser');
const methodOverride = require('method-override');
app.use('/estatico', express.static('src/app/public'));
app.use(bodyParser.urlencoded({
extended: true
}));
app.use(methodOverride(function (req, res) {
if (req.body && typeof req.body === 'object' && '_method' in req.body) {
// look in urlencoded POST bodies and delete it
var method = req.body._method;
delete req.body._method;
return method;
}
}));
const rotas = require('../app/rotas/rotas');
rotas(app);
module.exports = app;
Aqui está a declaração do script de remoção no final do arquivo lista.marko:
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<h1> Listagem de livros </h1>
<table id="livros">
<tr>
<td>ID</td>
<td>Título</td>
<td>Preço</td>
<td>Editar</td>
<td>Remover</td>
</tr>
<tr id="livro_${livro.id}" for (livro in data.livros)>
<td>${livro.id}</td>
<td>${livro.titulo}</td>
<td>${livro.preco}</td>
<td><a href="/livros/form/${livro.id}">Editar</a></td>
<td><a href="#" data-ref="${livro.id}" data-type="remocao">Remover</a></td>
</tr>
</table>
<script src="/estatico/js/remove-livro.js">
</script>
</body>
</html>
O editar está funcionando bem, a remoção não funciona pois logo ao abrir a página de listagem de livros o console informa que o script remove-livros não foi encontrado.
Alguma ideia de onde posso ter errado?