Laravel v9.37.0执行npm run dev报错:找不到vite.js模块
npm run dev报MODULE_NOT_FOUND错误 问题场景
在Laravel v9.37.0(PHP v8.1.10)新项目中安装Auth UI后,执行npm run dev时出现以下错误:
Error: Cannot find module 'F:\vite\bin\vite.js'
at Function.Module._resolveFilename (node:internal/modules/cjs/loader:925:15)
at Function.Module._load (node:internal/modules/cjs/loader:769:27)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:76:12)
at node:internal/main/run_main_module:17:47 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
npm ERR! code 1
npm ERR! path F:\A. WEB DESIGN & DEVELOPMENT\My Projects\SAIMUM\saimum
npm ERR! command failed
npm ERR! command C:\WINDOWS\system32\cmd.exe /d /s /c vitenpm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\ataur\AppData\Local\npm-cache_logs\2022-10-31T19_15_47_188Z-debug.log
npm install执行正常,但npm run dev触发该错误。
解决方案
按顺序尝试以下修复步骤:
1. 清除缓存并重装依赖
执行命令:
npm cache clean --force # Windows用户执行这两行 rmdir /s /q node_modules del package-lock.json # macOS/Linux用户执行这两行 rm -rf node_modules package-lock.json npm install
2. 指定使用本地vite
错误提示查找全局路径的vite,但Laravel项目应使用本地安装的版本:
- 检查项目根目录
node_modules/vite/bin下是否存在vite.js,如果不存在,执行npm install vite --save-dev补装 - 修改
package.json中的dev命令,明确指向本地文件:
将原来的"dev": "vite"改为:"dev": "node node_modules/vite/bin/vite.js"
3. 卸载全局vite避免冲突
若之前全局安装过vite,可能导致路径解析混乱,执行卸载:
npm uninstall -g vite
之后重新执行npm install和npm run dev。
4. 规避路径空格问题
项目路径包含空格(F:\A. WEB DESIGN & DEVELOPMENT\My Projects\SAIMUM\saimum)可能引发解析异常,将项目移动到无空格的路径(如F:\Projects\saimum),再重新执行依赖安装和开发命令。
内容的提问来源于stack exchange,提问作者Ataur Rahman

