如何在node.js Express中将jade定义为全局变量?

时间:2015-08-28 12:25:55

标签: javascript node.js express include pug

现在,以下路由功能可以使用:

exports.summary = function(req, res, next) { 
  var jade = require('jade');
  res.render('myView', {
     main: jade.renderFile('./views/summary.jade')
  });
};

正如您所看到的,变量' jade'每次触发路由功能时都会在本地定义。这可能是性能的关注点。每当我尝试全局定义jade时,我收到一条错误消息,指出没有定义jade。

有没有办法让我来定义“玉”'全局?

1 个答案:

答案 0 :(得分:2)

global.jade = require(' jade');

详细了解全球here

但是对于你的情况,最好只在模块级别定义jade:

var jade = require('jade');
exports.summary = function(req, res, next) { 
  res.render('myView', {
     main: jade.renderFile('./views/summary.jade')
  });
};

这应该有用。