我試圖在Node應用程序中指定函數參數類型。這是我想出了:使用TypeScript指定函數參數的類型
import express = require("express");
module.exports = (app) => {
app.get('/', (req: express.Request, res: express.Response) => { // <- this fails to compile
// do work
});
}
,併產生這個JS,這是不完全正確,顯然:
define(["require", "exports"], function(require, exports) {
module.exports = function (app) {
//......
};
});
TS定義是從DefinitelyTyped到來。 「express」被定義爲在.d.ts文件中的
declare module "express" {
。
顯然我做錯了..任何提示?
編輯: 要擴大basarat的回答是: 在的csproj文件中找到TypeScriptModuleKind項,並將其設置爲CommonJS的。
的TS結束這樣看:
import express = require("express");
module.exports = (app: express.Application) => {
app.get("/", (req, res) => {
res.send({ name: "woohooo" });
});
}