Laravel 8.83.27中npm run watch执行失败求助
问题分析与解决方案
错误含义解读
你遇到的Error: Cannot find module '..',本质是当前安装的cross-env版本和你的Node 8.17.0不兼容。新版本的cross-env已经不再支持Node 8这类旧版本,导致它内部的模块引用逻辑在你的环境里无法找到依赖文件,直接抛出了找不到模块的错误。
不升级Node的修复步骤
因为你不想升级Node版本,可通过安装适配Node 8的旧版cross-env解决问题:
- 先卸载当前的cross-env:
npm uninstall cross-env - 安装兼容Node 8的cross-env@6版本:
npm install cross-env@6 --save-dev - 重新执行
npm run watch即可。
额外说明
Laravel 8默认依赖的前端工具链(比如laravel-mix)可能会安装较新的cross-env版本,而这些版本不再兼容Node 8。指定安装旧版cross-env后,就能在保留现有Node版本的前提下正常运行前端编译命令,同时不影响你原本正常工作的WebSocket服务。
内容的提问来源于stack exchange,提问作者Virb
相关产品推荐
相关产品推荐

