You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用import替代require时遇模块未找到问题求助

解决isomorphic-fetch的ES6 Import用法问题

嘿,我之前也踩过这个坑!先给你揪出最明显的问题——你代码里的包名拼写错了!你写的import 'isomporphic-fetch'少了一个字母r,正确的包名是isomorphic-fetch,这就是导致“Can't resolve”错误的直接原因!

接下来说说isomorphic-fetch的正确导入姿势:

  • 这个模块属于副作用模块,导入它就会自动给全局环境挂载fetch方法,所以不需要导入任何变量,直接写:
    import 'isomorphic-fetch';
    
    这和你用require('isomorphic-fetch')的效果完全一致,导入后就能直接在代码里用fetch了。
  • 如果你非要用命名导入的方式(其实没必要),也可以这么写,但模块本身没有导出有用的变量:
    import * as fetchModule from 'isomorphic-fetch';
    

再补充几个可能踩坑的细节:

  • 确认已经正确安装包:npm install isomorphic-fetch --save(别漏了--save,不然生产环境会找不到依赖)
  • 如果用TypeScript开发,记得安装对应的类型声明:npm install @types/isomorphic-fetch --save-dev
  • 检查打包工具(比如Webpack)的配置,确保resolve.extensions里包含.js、.mjs这类后缀,避免因为扩展名匹配问题找不到模块

对比你提到的es6-promise,它的模块结构是导出了包含polyfill()方法的对象,所以可以导入后调用方法;而isomorphic-fetch只需要执行导入的副作用就够了,不需要额外调用任何方法。

内容的提问来源于stack exchange,提问作者Kokodoko

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:10:42