Windows WSL执行yarn start时动态导入文件被替换为文件夹名的问题
WSL下yarn start动态导入文件被替换为文件夹名的解决思路
针对你遇到的问题——WSL环境中运行yarn start时,动态导入的文件被解析成文件夹名,导致文件找不到的错误,结合两个同项目文件夹一个正常一个异常的情况,可按以下步骤排查解决:
检查并调整WSL目录大小写敏感性
Windows默认不区分文件大小写,但WSL挂载的NTFS目录可能因缓存或配置问题出现解析异常。可以临时将项目目录设置为大小写敏感:fsutil file setCaseSensitiveInfo /mnt/c/Projects/project enable操作完成后若问题解决,可根据需求改回
disable(避免影响Windows端访问)。彻底清理项目缓存与依赖
异常项目大概率存在缓存污染,执行以下操作重置依赖与构建缓存:# 删除本地依赖包和锁文件 rm -rf node_modules yarn.lock # 清理yarn全局缓存 yarn cache clean # 重新安装依赖 yarn install # 额外清理框架缓存(以Create React App为例) yarn cache clean --force # 手动删除工具生成的缓存目录 rm -rf .cache排查文件与文件夹命名冲突
仔细对比两个项目的目录结构,重点查看报错路径下(Tab目录)是否存在与ActivateAlertModal.tsx大小写近似的文件夹(比如ActivateAlertModal或小写的同名文件夹)。Windows允许文件与同名文件夹共存,但WSL的文件系统会严格区分,动态导入时会优先解析为文件夹而非文件。重命名冲突的文件夹即可解决问题。统一使用WSL路径访问项目
确保在WSL终端中通过/mnt/c/Projects/project这类挂载路径进入项目目录,再执行yarn start,避免混用Windows格式路径(C:/...)导致的路径解析混乱。
内容的提问来源于stack exchange,提问作者ionuttibi
相关产品推荐
相关产品推荐

