gpt4 book ai didi

javascript - 在浏览器和 Node 中的js文件中使用node-fetch

转载 作者:行者123 更新时间:2023-12-05 03:23:52 31 4
gpt4 key购买 nike

我构建了一个类来从 API 中获取一些信息并为我的应用构建合适的响应。

我在浏览器上运行的应用程序和在终端上运行的 CLI 应用程序中都使用了这个文件。

当我首先构建浏览器应用程序时,没有导入到 node-fetch。现在,当我尝试在我的 CLI 应用程序中使用此 .js 文件时,它会返回错误消息,提示 fetch is not defined

如果我添加到我的 api 客户端 .js 文件:import fetch from "node-fetch" 那么现在我的浏览器应用程序不能正常工作,打印到控制台:

未捕获的类型错误:无法解析模块说明符“node-fetch”。相对引用必须以“/”、“./”或“../”开头。

有没有办法为两者应用 fetch 和使用相同的文件?

谢谢

最佳答案

对于无法更新 Node 的用例,您可以有条件地导入 Fetch API。

let fetch = globalThis?.fetch;

if (!fetch && process?.versions?.node) {
fetch = (await import('node-fetch')).default;
}

console.log(fetch);

请注意,这使用了 top-level await .

关于javascript - 在浏览器和 Node 中的js文件中使用node-fetch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72434338/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com