新建Laravel项目中app.js未找到且npm运行失败问题求助
解决Laravel项目app.js 404导致页面空白的问题
排查与修复步骤:
验证资源编译路径与页面引用一致性
- 运行
npm run dev后,Laravel会根据版本使用Vite(9+)或Mix(8及以下)生成编译后的资源文件:- Vite会将文件输出到
public/build目录 - Mix会输出到
public/js目录
- Vite会将文件输出到
- 打开主视图文件(如
resources/views/welcome.blade.php或app.blade.php),确认app.js的引用方式正确:- Vite环境用:
@vite(['resources/js/app.js']) - Mix环境用:
<script src="{{ mix('js/app.js') }}"></script>
- Vite环境用:
- 禁止直接写死路径(如
<script src="/js/app.js"></script>),避免编译后路径不匹配。
- 运行
修复app.js中的重复导入问题
你的代码同时使用import './bootstrap';和require('./bootstrap');,会导致重复加载资源引发编译异常,保留一种写法即可:// 推荐ES模块写法(适配Vite) import './bootstrap'; import './components/HelloReact'; // 或CommonJS写法(适配Mix) // require('./bootstrap'); // require('./components/HelloReact');确认HelloReact组件文件存在
检查resources/js/components/HelloReact.js(或.jsx/.tsx)是否存在,文件名大小写是否与代码中的引用一致(Linux系统区分大小写),缺失则创建文件或修正路径。清理缓存并重新编译
- 删除
public/build(Vite)或public/js(Mix)下的旧编译文件 - 手动删除
node_modules和package-lock.json(若编译有异常),重新运行npm install - 重新执行
npm run dev,确保编译过程无报错 - 重启
php artisan serve服务
- 删除
匹配Laravel版本的构建工具依赖
- Laravel 9+默认用Vite,确认
package.json包含vite和laravel-vite-plugin,缺失则运行npm install补全 - Laravel 8及以下用Mix,确认
package.json有laravel-mix,若依赖异常则重新安装依赖
- Laravel 9+默认用Vite,确认
内容的提问来源于stack exchange,提问作者Marin
相关产品推荐
相关产品推荐

