I wrote my own middleware as module for my purposes that looks like the following:
-- myMiddleware.js
module.exports = {
fn1: function (req, res, next) {
console.log('fn1');
next();
},
fn2: function (req, res, next) {
console.log('fn2');
this.fn1(req, res, function () {
next();
});
}
};
In my sserver.js I use this middleware as the following:
app.set('views', __dirname + '/views');
app.set('view engine', 'jade');
app.use(express.favicon());
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(express.cookieParser('your secret here'));
app.use(require('./myMiddleware').fn2);
Unfortunately that does not work because this context in fn2 in not myMiddleware.js object. How can use proper this?