cretueusebiu/laravel-javascript
| Install | |
|---|---|
composer require cretueusebiu/laravel-javascript |
|
| Latest Version: | 0.2.1 |
| PHP: | >=5.5.9 |
| Laravel: | 5 |
| License: | MIT |
| Last Updated: | Jun 14, 2017 |
| Links: | GitHub · Packagist |
laravel-javascript
Add JavaScript variables from Laravel.
ScriptVariables::add('user', Auth::user());
const user = window.config.user
Installation
Install the package via Composer:
composer require cretueusebiu/laravel-javascript
Next, you need to register the service provider and facade:
// config/app.php
'providers' => [
...
Eusebiu\JavaScript\JavaScriptServiceProvider::class,
],
'aliases' => [
...
'ScriptVariables' => Eusebiu\JavaScript\Facades\ScriptVariables::class,
],
Usage
In your controller:
<?php
namespace App\Http\Controllers;
use Eusebiu\JavaScript\Facades\ScriptVariables;
class HomeController extends Controller
{
public function home()
{
ScriptVariables::add('key', 'value');
ScriptVariables::add('data.user', User::first());
}
}
Next, in your blade view add:
{{ ScriptVariables::render() }}
Then in your JavaScript you can use:
const key = window.config.key
const user = window.config.data.user
To customize the namespace use ScriptVariables::render('custom').
Global Variables
You can register global variables (like the current user or csrf token) in your AppServiceProvider:
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use Eusebiu\JavaScript\Facades\ScriptVariables;
class AppServiceProvider extends ServiceProvider
{
public function boot()
{
ScriptVariables::add(function () {
return [
'csrfToken' => csrf_token(),
'currentUser' => auth()->user(),
];
});
}
}
Note that the variables must be passed via a closure.
Related Packages
Powerful PHP database abstraction layer (DBAL) with many features for database s...
Laravel Serializable Closure provides an easy and secure way to serialize closur...
Cli error handling for console/command-line PHP applications.
Version History
| Version | Released | PHP | Laravel | License |
|---|---|---|---|---|
| 0.2.1 | >=5.5.9 | ^5.1 | MIT | |
| 0.2.0 | >=5.5.9 | ^5.1 | MIT | |
| 0.1.0 | MIT |