Heim  >  Artikel  >  PHP-Framework  >  Empfehlung zur Erweiterung der Laravel-Nachrichtenaufforderung: spatie/Laravel-flash

Empfehlung zur Erweiterung der Laravel-Nachrichtenaufforderung: spatie/Laravel-flash

青灯夜游
青灯夜游nach vorne
2022-11-29 21:08:071809Durchsuche

Dieser Artikel stellt Ihnen eine einfache Laravel-Erweiterung mit Nachrichtenaufforderung vor: Spatie/Laravel-Flash-Paket und stellt vor, wie Sie es in Laravel verwenden. Ich hoffe, es wird für alle hilfreich sein!

Empfehlung zur Erweiterung der Laravel-Nachrichtenaufforderung: spatie/Laravel-flash

Seit einigen Jahren verwenden wir das Paket laracasts/flash, um Nachrichten in unseren Projekten zu flashen. Eine Flash-Nachricht ist eine Nachricht, die nur von der aktuellen Anfrage an die nächste Anfrage weitergegeben werden kann. Laracasts macht das sehr gut. Es unterstützt mehrere Arten von Flash-Nachrichten und Overlay-Nachrichten. Es verfügt über Startstile und voreingestellte Meldungsebenen.

Wir haben festgestellt, dass wir im Projekt nur einen kleinen Teil der Funktionen des Pakets laracasts/flash genutzt haben. Deshalb haben wir ein leichtes Paket spatie/laravel-flash auf den Markt gebracht. In diesem Blog werde ich es Ihnen vorstellen.
Unser Flash-Paket kann jeweils nur eine Flash-Nachricht senden. Da nur diese Funktionalität benötigt wird, können wir die API sehr sauber halten. Als nächstes folgt ein Beispiel für die Verwendung:

class MyController
{
    public function store()
    {
        // ...
        flash('My message', 'my-class');
        return back();
    }
}

Schauen wir uns an, wie Flash-Nachrichten angezeigt werden. Wir haben keine Ansichten im Paket. Sie können in Ihrer Bewerbung selbst eine Teilansicht erstellen. Der Inhalt der Ansicht könnte so aussehen:

@if(flash()->message)
    <div class="{{ flash()->class }}">
        {{ flash()->message }}
    </div>
@endif

Ziemlich einfach, oder?
Sie haben vielleicht bemerkt, dass wir im obigen PHP-Beispiel einen bestimmten CSS-Klassennamen – my-class – als zweiten Parameter der Funktion flash angeben können. In tatsächlichen Anwendungen müssen Sie möglicherweise angeben, ob es sich bei der Nachricht um eine Erfolgs-, Warn- oder Fehlermeldung handelt, anstatt einen bestimmten Klassennamen anzugeben. Dieses Paket erleichtert die Definition von Nachrichtenebenen und deren Zuordnung zu CSS-Klassen. Als nächstes erfahren Sie, wie Sie es verwenden: my-class 作为 flash 函数的第二个参数。在实际应用中你可能需要指定这个消息是一个成功,警告或错误消息,而不是要指定具体的类名。这个包可以轻松定义消息级别并使之与 CSS 类关联。接下来就是如何使用了:

// 这个会放在一个 service provider 中
\Spatie\Flash\Flash::levels([
    'success' => 'alert-success',
    'warning' => 'alert-warning',
    'error' => 'alert-eror',
]);

现在你就可以设置一个闪存消息了:

flash()->success('My message');
// 替代做法
flash('My message', 'success');

下个请求中 flash()->class 会返回 alert-successrrreee
Jetzt können Sie eine Flash-Nachricht festlegen: rrreee In der nächsten Anfrage gibt flash()->class alert-success.

Das ist der gesamte Inhalt dieses Pakets. Wir beabsichtigen, dieses Paket leichtgewichtig zu halten, da wir viele Funktionen im Flash-Messaging haben, die wir einfach nicht benötigen. Ich hoffe, dass das Paket
spatie/laravel-flash

auch bei Ihrem Projekt hilfreich sein kann.

Originaladresse: https://murze.be/a-laravel-package-to-flash-messages

Übersetzungsadresse: https://learnku.com/laravel/t/25990

[Verwandte Empfehlungen: 🎜Laravel-Video-Tutorial🎜】🎜

Das obige ist der detaillierte Inhalt vonEmpfehlung zur Erweiterung der Laravel-Nachrichtenaufforderung: spatie/Laravel-flash. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:learnku.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen