alexsabur/orchid-livewire

Orchid 平台的 Livewire 宏

5.3.0 2023-06-08 22:18 UTC

README

GitHub Workflow Status styleci

Packagist Packagist Packagist

包描述:Orchid 平台的 Livewire 宏

安装

通过 composer 安装

# for Orchid 12, 13, 14
composer require livewire/livewire alexsabur/orchid-livewire:^5.3

# for Orchid 11
composer require livewire/livewire alexsabur/orchid-livewire:^4.0

# or for Orchid 10
composer require livewire/livewire alexsabur/orchid-livewire:^3.0

发布 orchid-livewire 资产

php artisan vendor:publish --tag=orchid-livewire-assets

发布原始资产 livewire(可选)

php artisan vendor:publish --tag=livewire:assets

发布包配置(可选)

php artisan vendor:publish --provider="AlexSabur\OrchidLivewire\ServiceProvider"

使用方法

用于表格和视图

/**
 * @return array
 */
public function columns(): array
{
    return [
        TD::set('status', __('Name'))
            ->sort()
            ->cantHide()
            ->filter(TD::FILTER_TEXT)
            ->livewire('user.pool-status'),

        // livewire will send an "email" with the key "email"
        TD::set('email', __('email'))
            ->livewire('user-email', key: fn (User $user) => "td-user-email-{$user->id}"),

        // livewire will be passed the model under the key 'user'
        TD::set('some_data', __('some data'))
            ->livewire('some-component', 'user', fn (User $user) => "td-some-data-{$user->id}"),

        TD::set('id', __('ID'))
            ->livewire('user.id', function (User $user) {
                return [
                    'user' => $user
                ];
            }, fn (User $user) => "td-user-{$user->id}"),
    ];
}

用于屏幕

/**
 * Views.
 *
 * @return Layout[]
 */
public function layout(): array
{
    return [
        // With only user and role from query
        Layout::livewire('user.pay-status')
            ->only(['user', 'role']),

        // With except role from query
        Layout::livewire('foo')
            ->except('role'),

        // Without data from query
        Layout::livewire('baz')
            ->empty(),

        // With all from query
        Layout::livewire('baz'),
    ];
}

安全

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

鸣谢

本包是用 melihovv/laravel-package-generator 的帮助启动的。