javascript - airtable:TypeError:无法读取在 JEST 中运行的未定义的属性“绑定”
问题描述
运行我的 jests 测试时遇到问题,在导入 Airtable 时会出错
TypeError: Cannot read property 'bind' of undefined
> 1 | import AirtableAPI from 'airtable'
| ^
at Object.<anonymous> (node_modules/airtable/src/fetch.ts:5:80)
at Object.<anonymous> (node_modules/airtable/src/base.ts:5:1)
at Object.<anonymous> (node_modules/airtable/src/airtable.ts:1:1)
解决方案
错误是 fetch 未在窗口上定义。当我为测试导入 fetch 时,我是在 setupFilesAfterEnv 中这样做的,所以我添加到 jest.config `setupFiles: ['./jestSetup.js'],
在那个 jestSetup.js
const fetch = require("node-fetch")
global.fetch = window.fetch = fetch;
global.Request = window.Request = fetch.Request;
global.Response = window.Response = fetch.Response;
推荐阅读
- angular - 在 VS 代码中使用 Chrome 调试 Angular 应用程序时如何修复错误“无法连接到运行时进程”?
- laravel - 如何解决由于 Laravel 不活动而导致页面过期的问题
- ruby - 使用 twilio 发送动态内容短信
- loops - 如何压缩这些循环?
- amazon-iam - 使用标签授予 IAM 策略对特定 AWS Lightsail 资源的访问权限
- c++ - g++ 警告删除一个代码的数组而不是另一个
- algorithm - spoj Mixtures : 需要关于逻辑的帮助
- laravel - 为什么无法在我的托管服务器上解析 Laravel 所需的文件?
- arrays - 函数返回 3 维数组,我怎样才能得到 1 维数组?
- bash - BASH:如何制作一个每 X 秒更新一次并永远重复的脚本?