我们使用 express
在我们的应用程序中使用 TypeScript。我看到了他们的类型定义,想知道以下是什么意思:
export interface IRouter extends RequestHandler {
all: IRouterMatcher<this>;
}
特别是 IRouterMatcher<this>
.
我阅读了几次文档,但找不到任何提及此用例的内容。而且很难搜索 <this>
在 SO 或 Web 中,因为尖括号通常会被剥离。
最佳答案
this
指的是当前可用的类型。
这也可能是重写的类或接口(interface)的子类型。
另请参阅 https://www.typescriptlang.org/docs/handbook/advanced-types.html 中的多态 this 类型
例子:
class Calculator {
a: number;
add(): this {
a++;
return this;
}
}
class AdvancedCalculator {
substract(): this {
a--;
return this;
}
}
new AdvancedCalculator()
.add() // returns AdvancedCalculator as "this"
.substact() // it compiles!
关于typescript - <this> 在 TypeScript 泛型中是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53051706/