I think I have a solution. The Vue components are not being set up properly in app.js. Try this:
require('./bootstrap');
window.Vue = require('vue');
import Vue from 'vue';
import Buefy from 'buefy';
Vue.use(Buefy);
Then inside your view, instantiate the new view object wherever you are loading your scripts. For example, in a scripts section at the end of your view.
@section('scripts')
<script>
var app = new Vue({
el: '#app',
data: {
}
});
</script>
@endsection
Finally, make sure what the scripts section is being imported by whatever layout your view is extending. For example is your view is extending layouts.app, in layouts.app, add this before the closing tag
<script src="{{ asset('js/app.js') }}"></script>
@yield('scripts')
It's important to also import your app.js from resources/assets/js/
Also don't forget to run:
npm run dev
in the root directory of your app so that your app.js is compiled properly with the Vue component.
I hope this helps someone.