Chong Lip Phang
Chong Lip Phang

Reputation: 9279

How to define jade as a global variable in node.js Express?

Right now the following routing function works:

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

As you can see, the variable 'jade' is defined locally everytime the routing function is triggered. This can be a concern to performance. Whenever I tried to define jade globally, I received an error message saying jade is not defined.

Is there a way for me to define 'jade' globally?

Upvotes: 1

Views: 286

Answers (1)

zag2art
zag2art

Reputation: 5182

s global.jade = require('jade');

Read more about global here.

But for your case it's better just to define jade in the module level:

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

This should work.

Upvotes: 2

Related Questions