node模板引擎结合体consolidate.js

 分类:前端开发时间:2020-05-21 11:25:55点击:

node模板引擎结合体consolidate.js是一个模板引擎的结合体。包括了常用的jade和ejs,通过配置我们就可以使用多种模板引擎。在node环境下用npm install consolidate命令安装consolidate.js使用起来也不难。

node模板引擎结合体consolidate.js

一、GitHub地址:https://github.com/tj/consolidate.js

二、consolidate.js安装:npm install consolidate

三、consolidate.js使用

//引入
const consolidate = require("consolidate")
//输出什么东西
server.set("view engine","html");//set() 全局的配置修改整个server
 //模板文件放在哪    
server.set("views","./views");
 //使用具体那模板引擎
 server.engine("html",consolidate.ejs);

四、举例,我们要完成下面的两个需求:

      A.当用户访问/index的时候就显示index.html页面

      B.当用户访问/admin的时候就显示admin.html页面

代码实现:

1.两个ejs文件

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  index
</body>
</html>
<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  admin
</body>
</html>

2.js文件

const server = require('express')();
const consolidate = require('consolidate');
// 将html设置为默认扩展
server.set('view engine' , 'html');
// 指定模版文件位置,这边表示的是同级目录
server.set('views' , './');
// 指定将ejs文件渲染成html文件
server.engine('html' , consolidate.ejs);
// 当用户访问/index时,渲染1.ejs,下同
server.get('/index' , (req , res) => {
  // render第二个参数可以跟一个json,十分方便
  res.render('1.ejs' , {username:'eric'});
});
server.get('/admin' , (req , res) => {
  res.render('2.ejs' , {username:'eric'});
});
server.listen(3000);
除注明外的文章,均为来源:老汤博客,转载请保留本文地址!
原文地址: