evelution87/alpine-tables

使用 Alpine JS 的 Laravel 数据表

v0.9.52 2024-09-03 06:18 UTC

README

Latest Version on Packagist Total Downloads GitHub Actions

此软件包为 Laravel 网站提供了一个组件,用于通过 AlpineJS 和 Tailwind CSS 嵌入数据表。

安装

您可以通过 composer 安装此软件包

composer require evelution87/alpine-tables

必须运行以下命令以发布所需资源

php artisan alpinetables:publish

使用方法

可以通过向控制器添加特质来为控制器启用 Alpine Tables。

use \Evelution\AlpineTables\Traits\HasAlpineTable;

您必须包含两个函数的自己的版本

alpineModel() 定义了表将使用的 Laravel 模型。将 'User' 替换为表将与之工作的模型。

public function alpineModel() {
    return User::class;
}

alpineColumns() 定义了将在表上出现的列。(稍后添加文档)

public function alpineColumns() {
    return [
        [
            'key'   => 'name',
            'label' => 'Name',
        ],
    ];
}

可选:alpineSearchColumns() 可以用来定义可以搜索的列。默认情况下,它返回由 alpineColumns() 定义的所有列的列表,但您可能想要自定义此设置。

添加到视图

要将表格插入到视图中,您可以使用 <x-alpine-table> blade 组件。

<x-alpine-table route="{{ route('ajax.alpine.example') }}" key="example"></x-alpine-table>
  • route 属性定义了用于加载表格数据的 AJAX 路由。此路由应在您的 routes.php 文件中定义。示例
Route::post('ajax/example' [ ExampleController::class, 'alpineRequest'] );
  • (可选)key 属性在将设置(如筛选器)保存到用户的本地浏览器存储时使用。为每个表格使用不同的密钥,以便保存不同的筛选器。或者,您可以使用相同的密钥使筛选器功能跨越不同的表格。

变更日志

请参阅 CHANGELOG 了解最近更改的更多信息。

贡献

请参阅 CONTRIBUTING 了解详细信息。

安全

如果您发现任何与安全相关的问题,请通过电子邮件 craig@evelution.net 而不是使用问题跟踪器。

鸣谢

许可

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

Laravel 软件包模板

此软件包是使用 Laravel 软件包模板 生成的。