node.js - 使用 Typescript 表达 4.x

标签 node.js express typescript

我正在尝试使用 typescript 制作一个快速应用。

到目前为止,这是我的代码:

//<reference path="./server/types/node.d.ts"/>
//<reference path="./server/types/express.d.ts"/>

import express = require('express');

var app = express();

app.get('/', function(req, res) {
    res.send('hi');
});

app.listen(3000);

没什么特别令人震惊的,我只是想让它工作,但不知何故,总是在我尝试将此文件转换为 js 文件时。我得到奇怪的错误,即使我将 express 版本更改为 3.1(express.d.ts 仅支持 express 3.1 而不是 4.x)

知道我在哪里可以获得 express 4.x 的 express.d.ts 文件或我做错了什么吗?

>> error TS2071: Unable to resolve external module ''express''
>> error TS2071: Module cannot be aliased to a non-module type.
>> error TS2095: Could not find symbol 'express'.

最佳答案

您引用的评论是错误的。需要三个斜杠 /// :

///<reference path="./server/types/node.d.ts"/>
///<reference path="./server/types/express.d.ts"/>

如果您使用此引用文件,您唯一会遇到该错误https://github.com/borisyankov/DefinitelyTyped/blob/master/express/express.d.ts#L26是您的引用评论有误, typescript 没有读取那个 express.d.ts :)

关于node.js - 使用 Typescript 表达 4.x,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23290458/

相关文章:

node.js - 使用 nock 模拟多个 couch 数据库请求

javascript - Node.js 强制从另一台服务器下载

node.js - Node 异步推送循环

node.js - 尝试在命令行创建一个 Express 应用程序

javascript - react Antd : How to remove spacing between vertical divider and any content right next to it?

javascript - 你能找到分配给一个对象(node.js)的内存吗?

javascript - 使用 Sequelize 为多对多关系创建新实例

node.js - bcryptjs 中的加密和解密

javascript - Angular 合并几张图片

javascript - jsdoc 如何使用静态属性的类