я написал свой собственные межплатформенный как модуль для моих целей, выглядит следующим образом:Как использовать «этот» контекст промежуточного
-- 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. Как можно правильно использовать это?
Спасибо за помощь – Erik
Почему я не могу использовать только var middlewares = module.exports = {}; ? – Erik
вы можете !, вы также можете пропустить ссылку middlewares и использовать export.fn1 = ...; export.fn2 = function (...) {exports.fn1();}; это зависит от того, как вы чувствуете себя более комфортно. –