是否可以使用“导入”在 TypeScript 项目中包含 NodeJS 模块

Ete*_*ous 0 express typescript

我正在将我的 NodeJS + ExpressJS 项目转换为 typescript,我从https://github.com/borisyankov/DefinitelyTyped获得了 ExpressJS 的 Typescript 定义。

在打字稿之前,我用“require”语句导入了 Express

var express = require("express")
Run Code Online (Sandbox Code Playgroud)

不,我需要以可以使用 Typescript 语法和功能的方式导入它,同时确保 Typescript 编译器将其编译为上面显示的语句。这是我写的代码:

/// <reference path="express.d.ts" />
import express = require("express");
var app = express.express();
app.use(express.logger());
Run Code Online (Sandbox Code Playgroud)

然而,这会引发错误:Unresolved function or method express()在:

var app = express.express();
Run Code Online (Sandbox Code Playgroud)

bas*_*rat 5

我相信应该是:

import express = require('express');
var app = express();
Run Code Online (Sandbox Code Playgroud)

参见示例:https : //github.com/borisyankov/DefinitelyTyped/blob/master/express/express-tests.ts#L3-L4