小编Vic*_*tor的帖子

Jest 在节点 v16.13.0 中找不到 AbortController

我正在使用 Jest 来运行我的测试。从 v12 升级到 Node v16.13.0(LTS 版本)后,出现以下错误:

ReferenceError:未定义 AbortController

而使用 Node 手动运行代码效果很好。

在升级到 v16 的过程中,我将所有软件包升级到了最新版本。我一直在为模拟 AbortController 使用 polyfill,因为我在升级之前使用的是 Node v12。Node v16 带有它自己的 AbortController,所以我删除了这个 polyfill。我正在使用 TypeScript 4.4.4,以防相关(这不是 TypeScript 错误)。

使用 Polyfill 时不会出现此错误。

与我使用 Node.js 手动运行应用程序时相比,Jest 运行时似乎没有使用相同的环境。

我尝试了以下方法:

  • 使用 nvm 将 Node v16.13.0 设置为默认版本
  • 删除除 v16.13.0 之外安装的所有其他版本的 Node
  • console.log(process.env)在测试开始时运行并检查正在使用的 Node 版本 -> 对 Node 的所有引用都具有相同的版本:16.13.0。

我已经研究了几个小时了,似乎互联网上没有人遇到这个问题。有谁知道发生了什么事吗?

node.js jestjs

7
推荐指数
1
解决办法
4436
查看次数

标签 统计

jestjs ×1

node.js ×1