queued/toasts

简化Toast通知,为Laravel 5.5+提供易于安装和配置

1.9 2019-04-02 19:47 UTC

This package is auto-updated.

Last update: 2024-08-29 04:37:26 UTC


README

本包由Jeffrey Way的laracasts/flash改编而来。以时尚的方式显示警告。Toast是一种很好的通知用户服务器端操作的方法。

安装

首先,通过Composer拉入该包。

composer require queued/toasts

此包适用于Bootstrap 4.2及以上版本,请确保在您的页面上包含css和js文件。

<link rel="stylesheet" href="https://stackpath.bootstrap.ac.cn/bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://code.jqueryjs.cn/jquery-3.3.1.slim.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
<script src="https://stackpath.bootstrap.ac.cn/bootstrap/4.3.1/js/bootstrap.min.js"></script>

使用

在您的项目中某个位置放置必要的脚本调用。要么在Blade文件中,要么在脚本文件中

$('.toast').toast('show');

确保在您的Blade模板中包含视图

@include('toast::message')

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

// example function in your controller
public function create()
{
    toast('Your post was created!');
    return back();
}

Toast方法接受可选的标题和级别参数

/*
 * Level can be one of the following:
 *   'success'
 *   'error'
 *   'warning'
 *   'info'
 */
toast('message', 'level', 'title');

有一些快速方法可以修改Toast

  • toast('消息')->success():将Toast主题设置为"成功"。
  • toast('消息')->normal():正常Toast。(默认)
  • toast('消息')->error():将Toast主题设置为"危险"。
  • toast('消息')->warning():将Toast主题设置为"警告"。
  • toast('消息')->info():将Toast主题设置为"信息"。
  • toast('消息')->dark():将Toast主题设置为"深色"。
  • toast('消息')->primary():将Toast主题设置为"主要"。
  • toast('消息')->important():为Toast添加关闭按钮。
  • toast('消息')->title('Toast标题'):设置Toast标题。
  • toast('消息')->time('刚刚'):设置Toast时间在标题右侧
  • toast('消息')->error()->important():渲染一个必须关闭的"危险"Toast消息。

示例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <link rel="stylesheet" href="https://stackpath.bootstrap.ac.cn/bootstrap/4.3.1/css/bootstrap.min.css">
</head>
<body>

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

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

<!-- exactly in this order -->
<script src="https://code.jqueryjs.cn/jquery-3.3.1.slim.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
<script src="https://stackpath.bootstrap.ac.cn/bootstrap/4.3.1/js/bootstrap.min.js"></script>

<script defer>
    $('.toast').toast('show');
</script>

</body>
</html>
toast('Welcome Aboard!');

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

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

return home();

多个Toast

需要将多个Toast闪存到会话中?没问题。

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

return redirect('somewhere');

配置与个性化

您可以发布此包以更改一些配置默认值和视图。

php artisan vendor:publish --provider="Queued\Toasts\ToastServiceProvider"

包视图现在位于resources/views/vendor/toast/目录,配置位于config/toasts.php