为了我的目的,我编写了自己的中间件作为模块,如下所示:
-- 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();
});
}
};
在我的 sserver.js 中,我使用以下中间件:
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);
不幸的是,这不起作用,因为 fn2 中的这个上下文不是 myMiddleware.js 对象。如何正确使用这个?