我有一个针对Express的简单身份验证中间件。它检查标头,如果一切正常,则调用next()。
现在当我在"DoSomething"时,“this”等于全局而不是“Test”的实例,而“this.DoSomeThingPrivate”未定义。
我尝试了
DoSomeThingPrivate :() => void;
this.DoSomeThingPrivate = () => {
...
}
模式。但是也不起作用。
import express = require('express');
var app = express();
class Test {
constructor() {
}
DoSomething(req:express.Request, res:express.Response, next:Function) :void {
this.DoSomeThingPrivate();
}
private DoSomeThingPrivate() :void
{
}
}
var test = new Test();
app.use(test.DoSomething);
有什么想法……
谢谢
express.NextFunction
的next
参数。 - Onur YıldırımDoSomething
输入为express.RequestHandler = (req, res, next) => ...
。请注意,此翻译仅供参考,具体语境可能需要根据上下文进行微调。 - Ian Liu Rodrigues