明明存在对应文件却无法导入,求助解决Module not found问题
解决「Module not found: Error: Can't resolve」问题的排查要点
- 大小写敏感问题:Linux/macOS系统的文件区分大小写,要是你导入写的是
./Components/Button,但实际文件夹是components(小写c),肯定找不到。Windows虽然不敏感,但部署到服务器后大概率会出问题,统一大小写准没错。 - 相对路径是否正确:核对当前文件和Button.js的位置关系。比如当前文件在
src/pages/Index.js,导入src/components/Button.js就得写../components/Button,别写错层级。 - 文件扩展名配置:如果用Webpack这类工具,检查
resolve.extensions里有没有包含.js。没配置的话,要么导入写全Button.js,要么去配置里加一下。 - 文件名精准匹配:再仔细看一眼
src/components下的文件,是不是真的叫Button.js?有没有可能是Button.jsx或者button.js(首字母小写)?别小看这种细节。 - 路径别名是否生效:要是你配置了
@代替src/这类别名,确认别名配置正确,导入时有没有用对格式(比如@/components/Button)。
附上报错截图:
要是这些都排查完还没解决,把你的导入代码和项目目录结构贴出来,更容易定位问题。
内容的提问来源于stack exchange,提问作者Sugarpearl
相关产品推荐
相关产品推荐

