我正在努力更新一个简单的NodeJS+ExpressJS应用程序以使用TypeScript.我已经让它工作了,但我不得不添加一些额外的数据注释,以在VisualStudio&中添加额外的类型判断和代码时自动完成/智能感知;网络风暴.

我得到了最新的express.d.ts份参考资料.我还创建了Express应用程序:

var app = express();

一切正常...但我似乎不知道如何添加app的类型信息,以便在键入以下内容时自动完成帮助

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

我试着用Express.Application(以及.Request.Response)注释app(以及reqres),但这并不能解决问题.看着类型定义,我对typedef是如何编写的,创建了内部的"e"引用感到困惑...

奇怪的是,我没发现有人问我&自从特快列车开动后就解决了.d、 ts typedef是为ExpressJS 4.0更新的(之前我找到了对ExpressServer的引用,但今天没有.

思想?

推荐答案

Classic case of "work on something for a while with no success, but when you finally post a question asking for help, you figure it out immediately".

解决方案是:

在上面的代码(位于我的app.ts中)中,我得到了app上的类型注释.因为我在文件顶部的import语句是import express = require('express');,所以我可以对req&;res个参数如下:

app.get('/', function(req:express.Request, res:express.Response){});

在其他文件中,我试图在app上获取类型注释,但缺少文件顶部的import语句.添加后,我可以添加注释,如:

public init(app: express.Application){}

Typescript相关问答推荐

端点之间的TEK查询缓存

在角形加载组件之前无法获取最新令牌

Typescript如何从字符串中提取多个文本

从接口创建类型安全的嵌套 struct

Angular 17 -如何在for循环内创建一些加载?

当类型断言函数返回假时,TypScript正在推断从不类型

VS代码1.88.0中未出现自动导入建议

将props传递给子组件并有条件地呈现它''

如何使函数接受类型脚本中具有正确类型的链接修饰符数组

Typescript泛型类型:按其嵌套属性映射记录列表

如何在另一个参数类型中获取一个参数字段的类型?

APIslice-CreateAPI的RTK打字错误

有条件地删除区分的联合类型中的属性的可选属性

已解决:如何使用值类型限制泛型键?

Angular 自定义验证控件未获得表单值

TypeScrip错误:为循环中的对象属性赋值

如何通过转换器类继承使用多态将对象从一种类型转换为另一种类型

类型';只读<;部分<;字符串|记录<;字符串、字符串|未定义&>';上不存在TS 2339错误属性.属性&q;x&q;不存在字符串

类型脚本中函数重载中的类型推断问题

可以将JS文件放在tsconfig';s includes/files属性?或者,我如何让tsc判断TS项目中的JS文件?