Express 如何支持多引擎渲染

1. 安装

执行npm install (安装express)

npm install hbs --save

npm install ejs --save


2. 编辑application.js

打开node_modules->express->lib->application.js

找到大约570行   defaultEngine: this.get('view engine'),

修改为 this.get('view engine') 为this.get(path.extname(name) + " engine") ? this.get(path.extname(name) + " engine") : this.get('view engine'),

上面再加入    var path = require('path');

例如:

    var path = require('path'); // ZY Express  

    view = new View(name, {
      defaultEngine: this.get(path.extname(name) + " engine") ? this.get(path.extname(name) + " engine") : this.get('view engine'),
      root: this.get('views'),
      engines: engines
    });


3. 在工程app.js里加入引擎支持

expres 默认是对jade的支持,需要写入如下

var hbs = require('hbs');
var ejs = require('ejs');

app.set('ejs engine', 'ejs');
app.set('hbs engine', 'hbs');
app.set('jade engine', 'jade');


4. 引用时在res.render的参数调用时加入完整的文件名称,以便正确识别.

例如:修改index.js

router.get('/page1', function(req, res, next) {
  res.render('page1.jade', { title: 'Express 111' });
});

router.get('/page2', function(req, res, next) {
  res.render('page2.hbs', { title: 'Express 222' });
});

router.get('/page3', function(req, res, next) {
  res.render('page3.ejs', { title: 'Express 333' });
});


5. 生成上面3个例子文件放到views目录中.




 



 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值