📜  不支持 ES 模块的 nodefetch. (1)

📅  最后修改于: 2023-12-03 15:21:31.674000             🧑  作者: Mango

不支持 ES 模块的 nodefetch

简介

在使用 nodefetch 这个第三方库时,如果使用了 ES 模块的语法,会出现无法使用的问题。这是因为 nodefetch 并不支持 ES 模块的语法,在 v3.0.0 版本之前都是使用 CommonJS 的语法。

解决方案

有以下两种解决方案可以解决此问题。

方案一:使用 require 语法

在使用 nodefetch 时,可以使用 require 语法代替 ES 模块的语法。

const fetch = require('node-fetch');

fetch('https://www.example.com')
  .then(res => res.text())
  .then(body => console.log(body));
方案二:升级到 v3.0.0 及以上版本

v3.0.0 版本之后,nodefetch 已经支持 ES 模块的语法。如果可以升级到此版本及以上,则可以直接使用 ES 模块的语法。

import fetch from 'node-fetch';

fetch('https://www.example.com')
  .then(res => res.text())
  .then(body => console.log(body));
结论

使用 nodefetch 时,如果需要使用 ES 模块的语法,需要升级到 v3.0.0 及以上版本,或者使用 require 语法代替 ES 模块的语法。