mhmiton/laravel-turbolinks-form

使用 Turbolinks 的 Laravel 表单提交。

v1.0.0 2021-05-07 01:39 UTC

This package is auto-updated.

Last update: 2024-09-13 22:03:50 UTC


README

使用 Turbolinks 的 Laravel 表单提交。

安装

要求

通过 Composer 安装

composer require mhmiton/laravel-turbolinks-form

您可以通过运行以下命令发布配置文件:

php artisan vendor:publish --provider="Mhmiton\\LaravelTurbolinksForm\\LaravelTurbolinksFormServiceProvider" --tag="config"

您可以通过运行以下命令发布视图:

php artisan vendor:publish --provider="Mhmiton\\LaravelTurbolinksForm\\LaravelTurbolinksFormServiceProvider" --tag="views"

注册中间件

必须将 \Mhmiton\LaravelTurbolinksForm\Middleware\Turbolinks::class 中间件注册到内核中。

示例

// app/Http/Kernel.php

...

protected $middlewareGroups = [
    'web' => [
        ...
        \Mhmiton\LaravelTurbolinksForm\Middleware\Turbolinks::class,
    ],

    ...
];

验证

对于表单验证,您需要在异常处理程序中使用 \Mhmiton\LaravelTurbolinksForm\Traits\TurbolinksValidatable 特性。

示例

// app/Exceptions/Handler.php

...
use Mhmiton\LaravelTurbolinksForm\Traits\TurbolinksValidatable;

class Handler extends ExceptionHandler
{
    use TurbolinksValidatable;
    
    ...
}

脚本

将以下包脚本包含到您的布局文件中。

示例

@include('turbolinks-form::scripts')

// Laravel 7 or greater

<x:turbolinks-form::scripts />

注意: 您可以通过发布视图文件来修改这些脚本。

配置

发布配置文件后,配置文件位于 config/turbolinks-form.php

启用或禁用

/*
|--------------------------------------------------------------------------
| TurbolinksForm settings
|--------------------------------------------------------------------------
| TurbolinksForm is enabled by default.
| You can override the value by setting enable to true or false.
|
*/

'enabled' => env('TURBOLINKS_FORM', true)

// or using .env file
TURBOLINKS_FORM=true

选择器

/*
|--------------------------------------------------------------------------
| TurbolinksForm selector
|--------------------------------------------------------------------------
| TurbolinksForm used form selector by default.
| You can use any DOM selector for the form.
|
*/

'selector' => 'form'

许可协议

版权所有 (c) 2021 Mehediul Hassan Miton mhmiton.dev@gmail.com

MIT 许可协议 (MIT)。有关更多信息,请参阅 许可文件