--- id: 5895f700f9fc0f352b528e63 title: Set up a Template Engine challengeType: 2 videoUrl: '' localeTitle: Configurar un motor de plantillas --- ## Description
Como recordatorio, este proyecto se está construyendo sobre el siguiente proyecto de inicio en Glitch , o clonado desde GitHub . Un motor de plantillas le permite usar archivos de plantillas estáticas (como los escritos en Pug ) en su aplicación. En tiempo de ejecución, el motor de plantilla reemplaza las variables en un archivo de plantilla con valores reales que puede proporcionar su servidor y transforma la plantilla en un archivo HTML estático que luego se envía al cliente. Este enfoque facilita el diseño de una página HTML y permite la visualización de variables en la página sin necesidad de realizar una llamada a la API desde el cliente. Para configurar Pug para su uso en su proyecto, primero deberá agregarlo como una dependencia en su package.json. "pug": "^0.1.0" Ahora, para indicar a Node / Express que use el motor de plantillas, deberá indicar a su aplicación Express que configure 'pug' como 'motor de visualización'. app.set('view engine', 'pug') Por último, debe cambiar su respuesta a la solicitud de la ruta del índice a res.render con la ruta a las vistas de vista / pug / index.pug . Si todo salió según lo planeado, deberías actualizar la página de inicio de tus aplicaciones y ver un pequeño mensaje que dice que estás enviando con éxito el Pug desde nuestro archivo Pug. Envía tu página cuando creas que lo has hecho bien.
## Instructions
## Tests
```yml tests: - text: Pug es una dependencia testString: 'getUserInput => $.get(getUserInput("url")+ "/_api/package.json") .then(data => { var packJson = JSON.parse(data); assert.property(packJson.dependencies, "pug", "Your project should list "pug" as a dependency"); }, xhr => { throw new Error(xhr.statusText); })' - text: Ver el motor es Pug testString: 'getUserInput => $.get(getUserInput("url")+ "/_api/server.js") .then(data => { assert.match(data, /("|")view engine("|"),( |)("|")pug("|")/gi, "Your project should set Pug as a view engine"); }, xhr => { throw new Error(xhr.statusText); })' - text: Pug esta trabajando testString: 'getUserInput => $.get(getUserInput("url")+ "/") .then(data => { assert.match(data, /pug-success-message/gi, "Your projects home page should now be rendered by pug with the projects .pug file unaltered"); }, xhr => { throw new Error(xhr.statusText); })' ```
## Challenge Seed
## Solution
```js // solution required ```