ExpressJS:Template engines
template engines ce sont des modules qui permettent qui permet d'écrire des codes dynamiques (variables, fonctions) dans une page statique (HTML) ,il existe plusieurs template engines comme
- Pug
- Mustache
- EJS
- Jade:le générateur par défaut de ExpressJS
Exemple1 :Pug les variables
views/index.pug
html
head
title= variable1
body
h1= variable2
Serveur.js
//importer expressjs
var express = require('express');
var app = express();
app.set('views', './views');
app.set('view engine', 'pug');
app.get('/index', (req, res) => {
res.render('index', { variable1: 'le titre de la page', variable2: 'Bonjour tout le monde' })
})
//démarer le serveur sur le port 8081
app.listen(8081, function () {
console.log('Écoute du port 8081');
});
Exemple2 :Pug les boucles,tableaux,objets
views/index.pug
html
head
title= variable1
body
h1= variable2
ul
each val, index in tableau
li= index + ': ' + val
table(style='width:100%', border='1')
thead(style='width:100%', border='1')
th nom
th prenom
each val, key in clients
tr
td=val.nom
td=val.prenom
Serveur.js
//importer expressjs
var express = require('express');
var app = express();
app.set('views', './views');
app.set('view engine', 'pug');
app.get('/index', (req, res) => {
res.render('index',
{
variable1: 'le titre de la page',
variable2: 'Bonjour tout le monde',
tableau:['a','b','c'],
clients:[{'nom':'client1','prenom':'prenom1'},
{'nom':'client2','prenom':'prenom3'}
]
})
})
//les routes
const test = require('./routage')
app.use('/tests',test)
//démarer le serveur sur le port 8081
app.listen(8081, function () {
console.log('Écoute du port 8081');
});