typescript - 打字稿中的声明类型
问题描述
这两天我一直在做一个网页,我选择使用 TypeScript。
我选择 Express.js 作为 Web 服务器,过去我使用过 Express,所以我了解 Express。
我看到 TypeScript 非常看重每个属性以及哪些属性具有哪些属性,我对此有疑问,因为默认情况下未设置属性“user”,我想使用它来保存解码的用户会话。
在网上搜索后,我发现了这个:
declare module "express" { // declare module "express-serve-static-core"
export interface Request {
user: any
}
}
来自这篇文章:Typescript 错误:“请求”类型上不存在属性“用户”
我将它粘贴到一个文件中,它运行良好,但我有两个问题:
- 我不知道为什么它有效。我不需要该文件,但是它可以工作,我所做的独特之处在于它在 tsconfig.json 内的 typeroots 中需要它,但使用 ts-node 执行。不知道有没有什么效果(其实Visual Studio Code不会报错但是ts-node会报错)。
- 我想给用户 Session 类型,所以我将 Session 导入到文件中,但现在 Visual Studio Code 告诉我这不在 User 属性中。
解决方案
推荐阅读
- jquery - 石板内容未更改
- python - IndexError:使用 GPT2 和 Hugging Face(pytorch)生成文本
- elasticsearch - 如果字段值在值数组中,Elasticsearch 搜索多个字段并返回结果
- azure - 没有从 Azure 中的控制台应用程序记录来处理服务总线消息
- kubernetes - secretKeyRef 上的 Helm 正则表达式
- vba - 使用 vba 选择特定电子邮件上的文件夹
- python - 用于检查的函数的 collatz 问题是偶数还是奇数
- c++ - 无法在 macosx 上编译 C++ 程序:错误:未知类型名称“constexpr”
- asp.net - MailKit.Security.SslHandshakeException:尝试建立 SSL 或 TLS 连接时出错
- scala - 如何从 HDFS 路径读取 JSON 文件并在 Scala 代码中使用而不是 MAP