📅  最后修改于: 2023-12-03 15:00:40.703000             🧑  作者: Mango
模板引擎是一种用于生成 HTML、XML、PDF 或其他文档格式的软件工具,它们一般是以约定的格式描述所需要呈现的信息。模板引擎将此预定义的格式和数据结构,填入开发者所提供的数据结构中,预定义格式的逻辑操作逐一执行后将生成所需输出格式的数据。
使用模板引擎可以将页面的数据展示与数据处理分离,使得代码更加清晰易读。同时,它也提供了在某些情况下必要的功能,例如布局、条件语句和循环语句等等。
ExpressJS 框架支持多个模板引擎,包括但不限于:
Pug(原名 Jade)是一种模板引擎,它的语法紧凑、简单易懂,可以大幅度的减少模板的代码量。
以下是一个基本的 Pug 例子:
html
head
title= title
meta(name='viewport', content='width=device-width, initial-scale=1.0')
link(rel='stylesheet', href='/stylesheets/style.css')
body
h1= title
p Welcome to #{title}
首先,安装 pug
模块:
npm install pug --save
然后,在 ExpressJS 应用程序中设置模板引擎:
const express = require('express');
const app = express();
const port = 3000;
app.set('view engine', 'pug');
app.set('views', './views');
app.get('/', (req, res) => {
res.render('index', { title: 'ExpressJS with Pug' });
});
app.listen(port, () => {
console.log(`Example app listening at http://localhost:${port}`);
});
最后,在 views
文件夹下创建 index.pug
模板文件:
html
head
title= title
body
h1= title
p Hello World!
运行后,在浏览器中访问 http://localhost:3000/ ,你将会看到以下信息:
<html>
<head>
<title>ExpressJS with Pug</title>
</head>
<body>
<h1>ExpressJS with Pug</h1>
<p>Hello World!</p>
</body>
</html>
在 ExpressJS 应用程序中使用模板引擎有利于分离代码逻辑和数据展示,并且 Pug 作为一种简洁的模板引擎,在提高代码可读性的同时,又不失灵活性。