riazxrazor/laravel-sweet-alert

Laravel 包用于显示美观的闪存消息

1.2.1 2018-03-02 04:17 UTC

README

GitHub Author GitHub release GitHub license GitHub issues

StyleCI

Laravel 包用于显示美观的闪存消息。基本上是一个用于美观、非常好且有用的 jQuery 插件 SweetAlert2 的 Laravel 包装器。使用 SweetAlert2 : 7.13.0

安装

打开 composer.json 并添加以下行。

{
    "require": {
        "riazxrazor/laravel-sweet-alert": "^1.2.0"
    }
}

或者您可以从项目目录运行此命令。

composer require riazxrazor/laravel-sweet-alert

配置

打开 config/app.php 并在 providers 部分添加以下行。

Riazxrazor\LaravelSweetAlert\LaravelSweetAlertServiceProvider::class,

aliases 部分添加以下行。

'LaravelSweetAlert' => Riazxrazor\LaravelSweetAlert\LaravelSweetAlert::class

通过运行此命令发布公共 assets

php artisan vendor:publish --tag=public --force

在布局 blade 模板的 HTML 中,在 </body> 部分之前放置此 blade 指令。

@LaravelSweetAlertJS

使用方法

您可以使用此函数。

// in the controller method 
\LaravelSweetAlert::setMessageSuccess("flash message")
\LaravelSweetAlert::setMessageError("error flash message")
\LaravelSweetAlert::setMessageSuccessConfirm("flash message")
\LaravelSweetAlert::setMessageErrorConfirm("error flash message")

// for more customization

 LaravelSweetAlert::setMessage([
                        'title' => 'Successful',
                        'text' => $text,
                        'timer' => 2000,
                        'type' => 'success',
                        'showConfirmButton' =>false
                    ]);
                    

\LaravelSweetAlert::setMessage([
        'title' => 'Auto close alert!',
        'text' => 'I will close in 5 seconds.',
        'timer' =>  5000,
            'onOpen' => '() => { swal.showLoading() }',
        ],
        
        // second argument array of js function each element will be a then to swal
        
        ['(result) => {
  if (
    // Read more about handling dismissals
    result.dismiss === swal.DismissReason.timer
  ) {
    console.log("I was closed by the timer")
  }
}'],

// third argument is a catch function to the promise of swal

'(e)=>console.log(e)'); 

当重定向到另一个路由时,会出现一个美观的闪存消息

有关更多自定义选项,请参阅 SweetAlert2 ,只需在 setMessage 方法中将 js 对象作为关联数组传递即可。