Maison > cadre php > Laravel > Recommandation d'extension d'invite de message Laravel : spatie/Laravel-flash

Recommandation d'extension d'invite de message Laravel : spatie/Laravel-flash

青灯夜游
Libérer: 2022-11-29 21:08:07
avant
1828 Les gens l'ont consulté

Cet article partagera avec vous une extension Laravel d'invite de message légère : package spatie/Laravel-flash, et vous présentera comment l'utiliser dans Laravel. J'espère qu'il sera utile à tout le monde !

Recommandation d'extension d'invite de message Laravel : spatie/Laravel-flash

Depuis quelques années, nous utilisons le package laracasts/flash pour flasher des messages dans nos projets. Un message flash est un message qui ne peut être transmis que de la requête en cours à la requête suivante. Laracasts le fait très bien. Il prend en charge plusieurs types de messages flash et de messages superposés. Il propose des styles de démarrage et des niveaux de messages prédéfinis prêts à l'emploi.

Nous avons constaté que nous n'utilisions qu'une petite partie des fonctions du package laracasts/flash dans le projet. Nous avons donc lancé un package léger spatie/laravel-flash. Dans ce blog, je vais vous le présenter.
Notre pack flash ne peut envoyer qu'un seul message flash à la fois. Puisque seule cette fonctionnalité est nécessaire, nous pouvons garder l’API très propre. Voici ensuite un exemple d'utilisation :

class MyController
{
    public function store()
    {
        // ...
        flash('My message', 'my-class');
        return back();
    }
}
Copier après la connexion

Voyons comment afficher les messages flash. Nous n'avons aucune vue dans le package. Vous pouvez créer vous-même une vue partielle dans votre application. Le contenu de la vue pourrait ressembler à ceci :

@if(flash()->message)
    <div class="{{ flash()->class }}">
        {{ flash()->message }}
    </div>
@endif
Copier après la connexion

Assez simple, non ?
Vous avez peut-être remarqué que dans l'exemple php ci-dessus, nous pouvons spécifier un nom de classe CSS spécifique - my-class comme deuxième paramètre de la fonction flash. Dans les applications réelles, vous devrez peut-être spécifier si le message est un message de réussite, d'avertissement ou d'erreur, plutôt que de spécifier un nom de classe spécifique. Ce package facilite la définition des niveaux de message et leur association aux classes CSS. Voici comment l'utiliser : my-class 作为 flash 函数的第二个参数。在实际应用中你可能需要指定这个消息是一个成功,警告或错误消息,而不是要指定具体的类名。这个包可以轻松定义消息级别并使之与 CSS 类关联。接下来就是如何使用了:

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

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

flash()->success('My message');
// 替代做法
flash('My message', 'success');
Copier après la connexion

下个请求中 flash()->class 会返回 alert-successrrreee
Vous pouvez maintenant définir un message flash : rrreee Dans la prochaine requête, flash()->class renverra alert-success.

C’est tout le contenu de ce package. Nous avons l'intention de garder ce package léger car nous avons de nombreuses fonctionnalités dans la messagerie flash dont nous n'avons tout simplement pas besoin. J'espère que le package
spatie/laravel-flash

pourra également être utile dans votre projet.

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

Adresse de traduction : https://learnku.com/laravel/t/25990

[Recommandations associées : 🎜tutoriel vidéo laravel🎜】🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:learnku.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal