javascript - 如何为节点模块提供 polyfill
问题描述
我正在尝试在 NodeJS/express 服务器中使用 unsplash-js 模块。正如文档所说:“这个库依赖于 fetch 向 Unsplash API 发出请求。对于不支持 fetch 的环境,您需要提供一个 polyfill”。我已经尝试过类似的东西,我很羞于展示,但为了学习,我会
const Unsplash = require('unsplash-js').default;
const fetch = require('node-fetch');
Unsplash.prototype.fetch = fetch;
const unsplash = new Unsplash({
applicationId: process.env.UNSPLASH_API_KEY,
});
还有这个
Node.prototype.fetch = fetch;
但当然,没有任何效果。我怎么做?
解决方案
您需要将 fetch 设置为全局变量,如下所示:
global.fetch = require('node-fetch')
推荐阅读
- javascript - 如何遍历对象内的数组
- python - python3 os moudle的路径拼接错误?
- apache-spark - 将数据存储到 PySpark (Azure - DataBricks) 中的数据库非常慢
- ios - 在 PieChartView 中仅显示来自 (key, value) 的数字
- python - guizero 中的数组问题
- jquery - 如何在 Laravel 中编写正确的 AJAX URL
- html - 如何在列表中的文本之后对齐按钮,使它们在同一列中?
- javascript - 如何根据显示的对象在点击时显示不同的文本?
- windows - Windows 中移动 phar 文件的 SUDO 命令的等效项是什么
- c# - Mircorsoft graphi Api,邀请被拒绝,因为它发生在过去