在node.js的实际使用中,我们并不会把传送给浏览器的页面都挨个去写,尤其是在一个网站中,会有很多范式相同的页面,我们通常会使用模板去减少重复的工作量。
模板引擎有很多种,包括我们后面会提到的ejs和art-template,它们除了本身,还需要有一个工具来把它们转换成供浏览器辨识的格式。consolidate就是起到这个作用的。它支持绝大多数主流的模板引擎。
使用步骤
引入consolidate模块
1
const consolidate = require("consolidate");
规定使用哪一种模板引擎
1
server.engine("html", consolidate.ejs);
规定用模板引擎输出什么类型的文件
1
server.set("view engine","html");
规定模板引擎的根目录
1
server.set("views", "./view");
使用模板引擎渲染
1
2
3server.get('/', (req, res) => {
res.render('1.ejs', {name: "nikkkki"}); //补全模板中的变量
})
这里我们先使用一个ejs文件来做例子。
1 | <!DOCTYPE html> |
1 | const express = require("express"); |
访问http://localhost:9000
就可以把1.ejs
文件渲染出来了:
使用consolidate需要设置的内容比较多,容易忘记,可以问自己终极三连问:
- 用什么模板 =>
server.engine
- 渲染成什么文件 =>
server.set("view engine", )
- 模板在哪里 =>
server.set("views", path)