Modelos - Node.js
No tema anterior, utilizamos um arquivo HTML com conteúdo estático. No entanto, podemos também usar ferramentas especiais: modelos, nos quais um determinado texto será inserido no arquivo. Por exemplo, podemos modificar o arquivo index.html
<!DOCTYPE html>
<html>
<head>
<title>Principal</title>
<meta charset="utf-8" />
</head>
<body>
<h1>{header}</h1>
<p>{message}</p>
</body>
</html>
Aqui, em vez de conteúdo específico, definimos os placeholders {header}
{message}
Para o arquivo de aplicação, definimos o seguinte arquivo app.js
const http = require("http");
const fs = require("fs");
http.createServer(function(_, response) {
fs.readFile("index.html", function(error, data) {
if(error) {
response.statusCode = 500;
response.end("Erro no servidor");
}
else {
const message = "Aprendendo Node.js";
const header = "Página Principal";
const dataText = data.toString().replace(/{header}/g, header).replace(/{message}/g, message);
response.end(dataText);
}
});
}).listen(3000);
Aqui, obtemos o conteúdo do arquivo, o convertendo em texto e substituindo os placeholders pelo texto específico usando o método data.toString().replace(
Ao acessar a aplicação, obteremos uma página HTML completa sem os placeholders:
