Mi aplicación no funciona. He reducido el código a lo básico tratando de encontrar el error. ¿Algunas ideas?
Esta es la estructura de archivos del proyecto. No hay otros archivos o carpetas además de los que se enumeran a continuación.
Este es el contenido de app.js:
// jshint esversion:6 const express = require(`express`); const ejs = require(`ejs`); const app = express(); app.set(`view engine`, `ejs`); app.get("/", function(req, res) { res.render(`home`); }); app.listen(3000, function() { console.log(`The server is now on.`); });Este es el contenido de home.ejs:
<!DOCTYPE html> <html lang=`en` dir=`ltr`> <head> <meta charset=`utf-8` /> <title>Secrets</title> </head> <body> <h1>Secrets</h1> </body> </html>Ejecuté npm init para crear esta aplicación y npm i express ejs para instalar las dependencias.
El error que me sale es el siguiente:
Error: no se pudo buscar la vista "inicio" en el directorio de vistas... ruta completa
¿Alguna idea de por qué esto no funciona correctamente?
Le falta indicar dónde estará la carpeta raíz para los archivos ejs.
var path = require('path'); app.set('views', path.join(__dirname, './views'));Además, para mí configuré el motor de vista así:
app.engine('.ejs', ejs.__express);Para mí funciona, vea una falla para una demostración.