ianrothmann / laravel-vue-bridge
A bridge to expose Laravel variables and routes in Vue and Vuex
Installs: 3 654
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 4
Forks: 0
Open Issues: 0
Requires
- php: >=5.4.0
- laravel/framework: >=5.4.0
README
A bridge for exposing Laravel variables and routes inside vue components. It supports Vuex. For use with Multi Page Applications using multiple Vue components. The idea is to get the best of both, between what Laravel and Vue offers.
This package should be used with the VueBridge npm package (https://github.com/ianrothmann/VueBridgeJs).
Installation
composer require ianrothmann/laravel-vue-bridge
In config/app.php
Service provider
IanRothmann\LaravelVueBridge\ServiceProviders\VueBridgeServiceProvider::class
Facade
'VueBridge' =>IanRothmann\LaravelVueBridge\Facades\VueBridge::class
In your main blade file, before
<script src="{{ mix('js/app.js') }}"></script>
you should add
{!! VueBridge::scripts(get_defined_vars()) !!}
Exposing variables
In your controller:
VueBridge::exposeVariables([array of variable names to expose]);
VueBridge::hideVariables([array of variable names to hide, all others will be exposed]);
VueBridge::exposeAllVariables();
VueBridge::hideAllVariables();
Exposing Routes
In web.php or in middleware. Routes are hidden by default:
VueBridge::exposeAllRoutes(); //exposes all named routes
VueBridge::exposeRoutes(([array of route names]);
VueBridge::hideRoutes([array of route names]);
More documentation to follow later