Which version of Laravel are you using for this project ?
Do you have webpack or vite ?
Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.
Has anyone done this? I have a Laravel + Vue 2 projects set up in the typical Laravel way: app.js:
import Vue from 'vue';
Vue.component('lists-page', require('./components/pages/ListsPage.vue').default);
Vue.component('sidebar-list', require('./components/SidebarList.vue').default);
const app = new Vue({
el: '#app'
});
Then in Blade files I just use:
<lists-page :lists="{{$lists}}"></lists-page>
And that is basically it.
But in Vue 3 things have changed. Following various guides I have tried this:
import { createApp } from "vue";
const app = createApp()
app.component('lists-page', require('./components/pages/ListsPage.vue').default);
app.mount("#app");
I have updated all other Vue packages to Vue 3, and fixed any build or console errors due to syntax changes etc. There's no errors in the page, but it is not rendering: instead I just have a red printout of what looks like a debug log wherever a component is on my page, like this:
@http://lists.test/js/app.js?id=bcc40402fff147ed18d53120f5e17727:35514:19
renderFnWithContext@http://lists.test/js/app.js?id=bcc40402fff147ed18d53120f5e17727:22980:23
@http://lists.test/js/app.js?id etc etc
Does anyone have any ideas? How did you upgrade your projects to work like this with Vue 3? Thank you!
Please or to participate in this conversation.