coderello / laraflash
Laravel 的高级闪存消息。
Requires
- php: ^8.1
- ext-json: *
- laravel/framework: ^10.0
Requires (Dev)
- orchestra/testbench: ^8.0
README
Laraflash 提供了一种方便的方式来处理闪存消息。
安装
您可以使用以下命令通过 composer 安装此软件包
composer require coderello/laraflash
之后,您需要在 app\Http\Kernel.php
中在 \Illuminate\Session\Middleware\StartSession::class
之后注册 \Coderello\Laraflash\Middleware\HandleLaraflash::class
中间件
您可以使用以下命令发布配置文件
php artisan vendor:publish --tag="laraflash-config"
添加闪存消息
添加闪存消息有许多语法变体,因此您可以选择您最喜欢的一种。
让我们看看其中的一些。
use Coderello\Laraflash\Facades\Laraflash; Laraflash::message()->content('Some content')->title('Some title')->type('success');
message()
方法创建并返回一个新的FlashMessage
实例,该实例可以通过链式方法进行修改(所有方法都可以在FlashMessage 方法
部分找到)。
laraflash()->message()->content('Some content')->title('Some title')->type('success');
Laraflash
外观可以替换为laraflash()
助手,如上例所示。
laraflash()->message('Some content', 'Some title')->success();
message()
方法最多接受五个参数:$content
、$title
、$type
、$delay
、$hops
。
laraflash('Some content', 'Some title')->success();
在上面的例子中提到的参数可以直接传递给
laraflash()
助手。
渲染闪存消息
可以使用 Laraflash
实例的 render()
方法渲染准备好的闪存消息。
laraflash()->render();
Laraflash
实例的所有方法(通过调用不带参数的laraflash()
助手获取)都可以在Laraflash 方法
部分找到。
将使用在
laraflash.skin
配置中指定的皮肤生成输出 HTML。所有可用的皮肤都列在配置文件中。
<div class="alert alert-danger" role="alert"> Danger message. </div><br><div class="alert alert-info" role="alert"> Info message. </div>
消息之间的默认分隔符是
<br>
,在laraflash.separator
配置中指定。如果您需要,可以自由更改它。
消息渲染为 HTML 的示例
以数组形式获取闪存消息
可以使用 toArray()
方法以数组形式获取闪存消息。
laraflash()->toArray();
这里是结果
[
[
"title" => null,
"content" => "Instant message.",
"type" => "danger",
"hops" => 1,
"delay" => 0,
],
]
您可以使用闪存消息的数组表示形式用于您的 API。
Laraflash
方法
message(?string $content = null, ?string $title = null, ?string $type = null, ?int $delay = null, ?int $hops = null): FlashMessage
创建并返回一个新的 FlashMessage
实例。
render()
将准备好的闪存消息渲染为 HTML。
keep(): self
为每个闪存消息添加一个跳数。
clear(): self
删除所有闪存消息。
all(): Collection
返回包含所有闪存消息的 Collection
实例。
ready(): Collection
返回包含准备好的闪存消息的 Collection
实例。
touch(): self
触摸所有闪存消息(递减跳数和延迟,删除过期的消息)。
toArray()
返回准备好的闪存消息的数组表示形式。
toJson()
返回准备好的闪存消息的 JSON 表示形式。
FlashMessage
方法
content(?string $content): self
设置闪存消息的内容。
title(?string $title): self
设置闪存消息的标题。
type(?string $type): self
设置闪存消息的类型。
danger(): self
将 danger
类型设置为闪存消息。
warning(): self
设置闪存消息的warning
类型。
info(): self
设置闪存消息的info
类型。
success(): self
设置闪存消息的success
类型。
hops(int $hops): self
设置消息的跳数(消息存在的请求数量)。
默认:1
delay(int $delay): self
设置消息的延迟(消息等待变为就绪状态所需的请求数量)。
默认:1
now(): self
快捷方式为->delay(0)
keep(): self
增加跳数。
attribute(string $key, $value = null): self
设置将在消息的数组表示中存在的自定义属性,并可以使用get()
方法获取。
get(string $key)
返回属性的值。
toArray()
返回消息的数组表示。
toJson()
返回消息的JSON表示。
测试
您可以使用以下命令运行测试:
composer test
更新日志
有关最近更改的详细信息,请参阅更新日志。
贡献
有关详细信息,请参阅贡献指南。
📖 许可证
Larflash 是开源软件,许可协议为MIT许可证。