所属分类:php教程
Laravel 9 保姆级视频教程,想学不会都难!进入学习
过去的几年里,我们一直在项目中使用 laracasts/flash 包来闪存消息。闪存信息指的是:一个仅能从当前请求传递到下一个请求的消息。Laracasts 包这点做的非常不错。它支持多种类型的闪存消息,覆盖消息。它有开箱即用的引导样式和预置的消息级别。
我们发现在项目中我们只使用到了一小部分 laracasts/flash 包的功能。所以我们推出了一个轻量级的包 spatie/laravel-flash。在这篇博客中我将为你介绍它。
我们的闪存包一次只能发送一个闪存消息。因为只需要这个功能,我们可以让 API 非常干净。接下来就是一个如何使用的例子:
class MyController
{
public function store()
{
// ...
flash('My message', 'my-class');
return back();
}
}
登录后复制
我们来看下如何展示闪存消息。在包中我们并无视图。你可以在应用中自己创建一个局部视图 。该视图内容的可能长这样:
@if(flash()->message)
<div class="{{ flash()->class }}">
{{ flash()->message }}
</div>
@endif
登录后复制
非常简单吧?
你可能已经留意到在上面的 php 例子中我们可以指定一个具体的 CSS 类名-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-success
。
这就是这个包的所有内容了。我们打算让这个包一直保持轻量,因为我们在闪存消息中我们根本不需要很多功能。希望 spatie/laravel-flash 包在你的项目中也能有所助益。
原文地址:https://murze.be/a-laravel-package-to-flash-messages
译文地址:https://learnku.com/laravel/t/25990
【相关推荐:laravel视频教程】
以上就是Laravel消息提示扩展推荐:spatie/Laravel-flash的详细内容,更多请关注zzsucai.com其它相关文章!