Laravel项目中Uncaught TypeError: Vue is undefined问题排查与解决
问题分析与解决
核心错误:拼写失误
你的app.js代码里存在一处拼写错误,注册组件时把default误写成了dafault,这会导致组件加载失败,进而引发Vue is undefined的报错。
修正后的app.js代码:
require('./bootstrap'); window.Vue = require('vue').default; Vue.component('mainapp', require('./components/mainapp.vue').default) const app = new Vue({ el:'#app', })
额外验证步骤
- 确认已安装Vue依赖:在项目根目录执行
npm install vue,确保Vue包已正确安装 - 重新编译前端资源:执行
npm run dev(开发环境)或npm run prod(生产环境),保证修改后的代码被编译到public/js/app.js - 检查
welcome.blade.php配置:- 页面底部(
</body>标签前)必须引入编译后的js文件:<script src="{{ asset('js/app.js') }}"></script> - 页面中存在
id="app"的容器,且已使用注册的组件:<div id="app"> <mainapp></mainapp> </div>
- 页面底部(
内容的提问来源于stack exchange,提问作者Narakaya
相关产品推荐
相关产品推荐

