You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TypeScript环境下Jest扩展全局变量后无类型自动补全如何解决

解决方案

按照以下步骤操作即可修复类型补全不生效的问题:

  1. 调整类型声明文件的内容和存放位置
    在项目根目录新建types文件夹,在该文件夹下创建global.d.ts,内容修改为:
declare global {
    namespace NodeJS {
     interface Global {
       app: import('supertest').SuperTest<import('supertest').Test>;
     }
   }
   // 适配globalThis和全局直接调用的类型识别
   declare const app: import('supertest').SuperTest<import('supertest').Test>;
}
// 必须添加此行,将当前文件标记为模块,全局类型扩充才会生效
export {};
  1. 修改tsconfig.json的include配置,新增types目录的扫描规则:
"include": ["./src/**/*", "./utils/**/*", "localization", "./tests/**/*", "./types/**/*"],
  1. 重启IDE的TypeScript语言服务
    以VSCode为例,按下Ctrl+Shift+P(Mac系统为Command+Shift+P),选择「TypeScript: Restart TS Server」,等待服务重启完成后,即可在测试文件中看到全局变量的自动补全提示。

内容的提问来源于stack exchange,提问作者Shahda

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 12:09:02