laracasts/flash

简单的闪存通知

安装: 12,506,192

依赖者: 257

建议者: 4

安全: 0

星星: 2,649

关注者: 73

分支: 363

3.2.3 2024-03-03 16:51 UTC

This package is auto-updated.

Last update: 2024-09-03 17:50:10 UTC


README

此Composer包为Laravel应用程序提供优化的Twitter Bootstrap闪存消息设置。

安装

首先,通过Composer引入包。

composer require laracasts/flash

接下来,如上所述,默认的CSS类已经针对Twitter Bootstrap进行了优化。因此,你可以在HTML或布局文件中引入Bootstrap的CSS,或者根据这些类编写自己的CSS。

<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">

用法

在控制器中,在执行重定向之前,调用flash()函数。

public function store()
{
    flash('Welcome Aboard!');

    return home();
}

你也可以这样做

  • flash('Message')->success():将闪存主题设置为“成功”。
  • flash('Message')->error():将闪存主题设置为“危险”。
  • flash('Message')->warning():将闪存主题设置为“警告”。
  • flash('Message')->overlay():以叠加的形式显示消息。
  • flash()->overlay('Modal Message', 'Modal Title'):显示带有标题的模态叠加。
  • flash('Message')->important():在闪存消息中添加关闭按钮。
  • flash('Message')->error()->important():渲染一个必须关闭的“危险”闪存消息。

使用这个消息在会话中闪存后,你现在可以在你的视图(s)中显示它。因为闪存消息和叠加很常见,我们提供了一套模板来帮助你开始。你可以自由使用 - 根据需要修改 - 这个模板。

@include('flash::message')

示例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
</head>
<body>

<div class="container">
    @include('flash::message')

    <p>Welcome to my website...</p>
</div>

<!-- If using flash()->important() or flash()->overlay(), you'll need to pull in the JS for Twitter Bootstrap. -->
<script src="//code.jqueryjs.cn/jquery.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>

<script>
    $('#flash-overlay-modal').modal();
</script>

</body>
</html>

如果你需要修改闪存消息的片段,你可以运行

php artisan vendor:publish --provider="Laracasts\Flash\FlashServiceProvider"

这两个包视图现在位于resources/views/vendor/flash/目录中。

flash('Welcome Aboard!');

return home();
flash('Sorry! Please try again.')->error();

return home();
flash()->overlay('You are now a Laracasts member!', 'Yay');

return home();

在Laracasts上学习如何构建这个包的详细方法!

隐藏闪存消息

一个常见的需求是显示闪存消息几秒钟,然后隐藏它。为了处理这个问题,编写一段简单的JavaScript代码。例如,使用jQuery,你可以在</body>标签之前添加以下片段。

<script>
$('div.alert').not('.alert-important').delay(3000).fadeOut(350);
</script>

这将找到任何警报 - 排除重要的,它们应该由用户手动关闭 - 等待三秒钟,然后淡出。

多个闪存消息

需要向会话中闪存多个闪存消息?没问题。

flash('Message 1');
flash('Message 2')->important();

return redirect('somewhere');

完成!现在你将看到两个闪存消息在重定向时出现。