使用Express()和TypeScript

我想在TypeScript中使用最新版本的Expess和node.js。 样本中的微软提供的express.d.ts似乎是基于3.0.x之前的版本构build的。 在以前的版本,你可以做

var app = express.createServer() 

但在3.0.x之后,你应该这样做:

 var app = express(); 

Express.d.ts不支持这个…我已经发现了一个黑客:我已经添加了以下行Express.d.ts:

 export function(): any; 

app.ts当我想创build应用程序对象时,我执行以下操作:

 var app = <express.ExpressServer>express(); 

这似乎解决了这个问题,这是编译没有错误,也得到了智能感知支持。 然而,这是一个黑客…首先,为什么我不能写这样的东西?

 export function(): ExpressServer; 

这是解决这个问题的推荐方法吗?

很老的讨论,但我最近跑了同样的问题,发现有一个新的express.d.ts ,正确支持在DefinitelyTyped网站快递3。

你应该能够添加这个环境函数声明express.d.ts得到你想要的。

declare function express(): ExpressServer;

下面是一个示例项目 – TypeScript中的Express 4.x应用程序: https : //github.com/czechboy0/Express-4x-Typescript-Sample