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

TS2307报错:无法找到模块@jest/globals或其对应类型声明如何解决?

解决方案

这个报错属于TypeScript类型校验层面的问题,运行正常是因为项目中实际安装了@jest/globals依赖包,仅类型定义匹配/配置存在问题,可按以下步骤修复:

  • 第一步:配置tsconfig.json类型引入
    在项目根目录的tsconfig.json的compilerOptions节点下新增types配置,明确引入jest的类型定义:
{
  "compilerOptions": {
    // 保留原有其他配置
    "types": ["jest", "node"]
  }
}

如果仅需要在测试文件中生效,也可以在每个测试文件首行添加三斜线引用指令:

/// <reference types="jest" />
  • 第二步:清理类型缓存重启校验
    如果配置完成后IDE仍提示报错,执行以下操作:
  1. 删除项目下的node_modules/.cache文件夹
  2. 重启IDE的TypeScript语言服务(以VSCode为例,按下Ctrl+Shift+P/Cmd+Shift+P,选择「TypeScript: Restart TS Server」即可)
  • 可选优化建议
    @jest/globals属于测试类依赖,无需放在生产依赖dependencies中,可以移动到devDependencies下统一管理。如果你不需要显式导入jest方法,也可以直接删除import { describe, expect, test } from '@jest/globals'这行代码,jest默认会把这些方法挂载到全局作用域,只要完成了第一步的tsconfig配置就不会触发全局变量未定义的报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 22:06:07