jestjs - 为什么 Jest 需要 Babel 来测试异步代码?
解决方案
Node.jsasync
自 7.6.0 版起默认支持函数,因此(正如您所怀疑的)Babel
不需要使用函数运行Jest
测试。async
我刚刚通过仅 Jest
安装v24.6.0 确认了这一点,并使用 Node.js v10.15.1 运行了此测试:
test('hi', async () => {
const val = await Promise.resolve('hello');
expect(val).toBe('hello');
});
......它通过就好了。
另一方面,Babel
需要使用 ES6 模块语法。
“An Async Example”文档中的许多示例都使用 ES6 模块语法(export default ...
、import * as ...
等),因此这些示例中的任何一个Babel
都需要这些语法才能工作。
推荐阅读
- powershell - 如何为活动注册提供选项?
- sql-server - 如何通过sql server查询获取写在方括号[]中的文本
- bash - 如何通过实例 id 从 aws CLI 获取 EC2 实例的公共 ip?
- android - 我如何自己调用垃圾收集器?
- python-2.7 - 保存 colab 结果
- c++ - 工厂内专力级施工
- angular - 构造函数的调用行为让我感到困惑
- python - 如何通过 python slackclient 将 application/x-www-form-urlencoded 发送到 slack?
- python - 返回真值索引
- javascript - 反应:无法读取未定义的属性“地图”