一、consolidatehtml
app.engine(ext, callback)
注册模板引擎的 callback 用来处理ext扩展名的文件
默认状况下, 根据文件扩展名require() 对应的模板引擎。 好比你想渲染一个 “foo.jade” 文件,Express会在内部执行下面的代码,而后会缓存require(),这样就能够提升后面操做的性能node
app.engine('jade', require('jade').__express);
那些没有提供 .__express 的或者你想渲染一个文件的扩展名与模板引擎默认的不一致的时候,也能够用这个方法。 好比你想用EJS模板引擎来处理 “.html” 后缀的文件:express
app.engine('html', require('ejs').renderFile);
consolidate.js 专门把全部的node流行的模板引擎进行了包装,这样它们在Express内部看起来就同样了。缓存
var engines = require('consolidate'); app.engine('haml', engines.haml); app.engine('html', engines.hogan);
用法:app
var engines = require('consolidate'); app.engine('jade', engines.jade); app.engine('html', engines.ejs); // or use these // app.engine('jade', require('jade').__express); // app.engine('html', require('ejs').renderFile); app.set('view engine', 'jade');