Laravel Toastr
, (*1)
Laravel Toastr uses toastr.js to display flash messages., (*2)
Inspired by https://github.com/oriceon/toastr-5-laravel, (*3)
Please note that this package was tunned for Laravel 5.4, (*4)
Installation
Run composer require incloudout/toastr to pull down the latest version of Laravel Toastr., (*5)
Edit config/app.php add the provider and the alias, (*6)
'providers' => [
...
InCloudOut\Toastr\ToastrServiceProvider::class,
],
'aliases' => [
...
'Toastr' => InCloudOut\Toastr\Facades\Toastr::class
],
To install toastr.js via npm
Run npm i --save-dev toastr, (*7)
Open resources/assets/sass/app.scss and add:, (*8)
...
@import "node_modules/toastr/toastr";
Open resources/assets/js/bootstrap.js and add:, (*9)
...
window.$ = window.jQuery = require('jquery');
window.toastr = require('toastr');
...
Run npm run dev for development or npm run build for production, (*10)
To require toastr.js via html
Go to your html master page and add:, (*11)
<head>
...
<link href="//cdnjs.cloudflare.com/ajax/libs/toastr.js/latest/toastr.min.css" rel="stylesheet"/>
</head>
<body>
...
<script src="//cdnjs.cloudflare.com/ajax/libs/toastr.js/latest/toastr.min.js"></script>
</body>
Note that toastr.js requires JQuery as a dependency, (*12)
Configuration
You can start by publishing the configuration files. Run the following command, (*13)
$ php artisan vendor:publish --provider=InCloudOut\\Toastr\\ToastrServiceProvider
You can change the default options with other options, see toastr.js demo to choose what suits you., (*14)
Usage
Add this code to your blade template file:, (*15)
{!! Toastr::execute() !!}
Call one of these methods in your controllers to insert a toast:
- Toastr::warning($message, $title = null, $options = []) - to add a warning toast
- Toastr::error($message, $title = null, $options = []) - to add an error toast
- Toastr::info($message, $title = null, $options = []) - to add an info toast
- Toastr::success($message, $title = null, $options = []) - to add a success toast
- Toastr::add($type = warning|error|info|success, $message, $title = null, $options = []) - to add a $type toast
- Toastr::clear() - clear all current toasts, (*16)
Use Laravel's session flash message. Make sure that your configuration toastr.session is set to true
- Simple usage:, (*17)
session()->flash('success', 'User Created);
session()->flash('success', [
'message' => 'User Created',
'title' => 'SUCCESS'
]);