在使用jest运行测试时出现了“URLSearchParams未定义”的错误。

5

当我在Jest运行测试时,如何使用URLSearchParams?

这样做时,我会得到以下错误:

ReferenceError: URLSearchParams is not defined

2个回答

1

1
好的,支持URLSearchParams的最早版本是什么,我们如何升级到它? - Matt
@MegaMatt 你已经找到解决方案了吗?我正在运行react-scripts 1.1.4,这似乎是最新版本,但我仍然遇到这个错误。 - productioncoder
1
react-scripts 1.14是最新的主要版本,仍然使用Jest 20。您可以通过查看node_modules文件夹中jest文件夹内的package.json文件来确认此信息。Jest 22中添加了对URLSearchParams的支持。因此,答案是:除非您想手动更改react-scripts正在使用的Jest版本(这不被推荐),否则您将无法在测试中使用URLSearchParams。在更新react-scripts以使用Jest 22+之前,我修改了我的测试以使用query-string npm包而不是URLSearchParams。 - Matt

-1
你是否在配置文件中将jest环境设置为默认值以外的内容? 你必须将jest环境设置为jsdom,以便常见的特定于浏览器的JavaScript组件可用。
jest --env=jsdom

请参阅配置Jest


@Lev,你能否更新你的答案,包括任何配置文件和一个失败测试的样例,以帮助人们排除错误? - megamit

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接