mirror of
https://github.com/php-flasher/php-flasher.git
synced 2026-03-31 15:07:47 +01:00
2.0 KiB
2.0 KiB
permalink, title, description
| permalink | title | description |
|---|---|---|
| /inertia/ | Inertia | Easily add flash notification messages to your Inertia application with PHPFlasher. Follow our step-by-step guide to install and use the library in your project, and start engaging and informing your users with powerful flash messages. |
PHPFlasher offers a solid integration with Inertia.js
Installation
To integrate PHPFlasher with Inertia.js, follow the same installation steps as for the Laravel Installation package.
Additionally, include @flasher/flasher in your package.json by adding the following line:
"@flasher/flasher": "file:vendor/php-flasher/flasher/Resources"
Then, run:
npm install --force
Usage
Dispatch notifications from your HandleInertiaRequests middleware shared data.
<?php
// app/Http/Middleware/HandleInertiaRequests.php
class HandleInertiaRequests extends Middleware
{
public function share(Request $request): array
{
return array_merge(parent::share($request), [
'messages' => flash()->render([], 'array'),
]);
}
}
Then render your notifications from your Layout.vue file like the following:
// resources/js/Shared/Layout.vue
<script>
import flasher from "@flasher/flasher";
export default {
props: {
messages: Object,
},
watch: {
messages(value) {
flasher.render(value);
}
}
}
</script>
All you have to do now, is to trigger you notification from anywhere in your application.
<?php
// app/Http/Controllers/UsersController.php
class UsersController
{
public function store()
{
// your saving logic
flash()->success('User created.');
return Redirect::route('users');
}
}