Dies ist mein erstes veröffentlichtes Paket. Ich wollte lernen, wie man ein einfaches Paket für Laravel macht. Ich habe viel über den IOC -Container gelesen, wie Laravel die Abhängigkeitsinjektion usw. macht. Dieses Paket wurde vom Great Laracasts/Flash -Paket inspiriert!
Laufen
$ composer require linking/flashr
Wenn das Paket installiert ist, können Sie das Paket im AppServiceProvider wie diesen registrieren, wenn Sie Laravel 5.x ausführen, das Paket im AppServiceProvider registrieren
<?php
use Linking Flashr FlashrServiceProvider ;
use Illuminate Support ServiceProvider ;
class AppServiceProvider extends ServiceProvider
{
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot ()
{
// ...
$ this -> app -> register (FlashrServiceProvider::class);
}
} Wenn Sie eine ältere Version von Laravel ausführen, können Sie die Datei App.php bearbeiten und diese in die Option providers hinzufügen
' providers ' => [
// ...
Linking Flashr FlashrServiceProvider::class,
];Sie sollten auch die Fassade in der Datei app.php unter der Schlüsselschlüssel "Aliase" hinzufügen, hinzufügen
' aliases ' => [
// ..
' Flashr ' => Linking Flashr Facades Flashr::class,
// ..
];In Ihren Controllern können Sie dies tun
public function edit ( Post $ post ) {
Flashr:: success ( " The post has been edited " );
return view ( ' post.edit ' , compact ( ' post ' ));
}FlashR enthüllen Unterschiedliche Funktionen, um verschiedene Blinktypen zu drucken. Hier ist eine Liste von FlashR -Funktionen:
Flashr::success($message)Flashr::info($message)Flashr::warning($message)Flashr::danger($message)Dann können Sie in Ihren Ansichten die Ansichten der Anbieter durchführen, indem Sie dies tun
@include ( ' flashr::flashes ' )HINWEIS: Es wird standardmäßig die Twitter -Bootstrap -Notation verwendet. Wenn Sie dieses Verhalten ersetzen möchten, lesen Sie einfach, was als nächstes kommt
Wenn Sie die Ansicht anpassen möchten, einfach tun
php artisan vendor:publish --tag=flashr
Dann gehen Sie in Ihrem Ansichtenverzeichnis . Sie sollten ein Verkäuferverzeichnis finden. In diesem Verzeichnis wird ein FlashR -Verzeichnis hier sein. Sie können diese Datei so bearbeiten, was Sie wollen. Standardmäßig sieht die Datei so aus:
@php
$flashr_type = Session :: has ( ' _flashr.type ' ) ? Session :: get ( ' _flashr.type ' ) : null ;
$flashr_message = Session :: has ( ' _flashr.message ' ) ? Session :: get ( ' _flashr.message ' ) : null ;
@endphp
@if ( $flashr_type && $flashr_message )
< div style = " position : relative " class = " alert alert- {{ $flashr_type } } " role = " alert " >
{{ $flashr_message } }
< span id = " close-flash " onclick = " var el = this.parentElement; el.remove() "
style = " position : absolute ; top : 10 px ; right : 10 px ; font-size : 24 px ; line-height : 10 px ; cursor : pointer " > & times ; </ span >
</ div >
@endif Wie Sie sehen können, fügen das Plugin zwei Schlüssel in der Sitzung hinzu: _flashr.type und _flashr.message