合并属性 - 如何让它们正常运行?
merge attributes - how do I get them to function properly?
我在 resources/views/components/green-button.blade.php 和 laravel 8.
中存储了以下组件
<button {{ $attributes->merge(['type' => 'button', 'class' => 'px-4 inline-flex justify-center py-2 border border-transparent shadow-sm text-sm font-medium rounded-md text-white bg-green-600 hover:bg-green-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-green-500']) }}>
{{ $slot }}
</button>
我用它:
<x-green-button class="px-0"
title="Click to show or hide data entry for {{$person->firstname}}."
wire:click="toggleVisibility({{$person->id}})">
<h3 class="my-1">{{$person->FullName_fh}}</h3>
</x-green-button>
组件的 x 轴填充为 px-4。我通过px-0,但是没有效果。我做错了什么?
rbd
您可以使用 @props()
来实现目标。
// In your component
@props(['customClass' => ''])
<button {{ $attributes->merge([
'type' => 'button',
'class' => 'all-your-classes ' . $customClass
]) }}>
{{ $slot }}
</button>
// In your blade file
<x-green-button customClass="px-0">
{{ $person->FullName_fh }}
</x-green-button>
我在 resources/views/components/green-button.blade.php 和 laravel 8.
中存储了以下组件<button {{ $attributes->merge(['type' => 'button', 'class' => 'px-4 inline-flex justify-center py-2 border border-transparent shadow-sm text-sm font-medium rounded-md text-white bg-green-600 hover:bg-green-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-green-500']) }}>
{{ $slot }}
</button>
我用它:
<x-green-button class="px-0"
title="Click to show or hide data entry for {{$person->firstname}}."
wire:click="toggleVisibility({{$person->id}})">
<h3 class="my-1">{{$person->FullName_fh}}</h3>
</x-green-button>
组件的 x 轴填充为 px-4。我通过px-0,但是没有效果。我做错了什么?
rbd
您可以使用 @props()
来实现目标。
// In your component
@props(['customClass' => ''])
<button {{ $attributes->merge([
'type' => 'button',
'class' => 'all-your-classes ' . $customClass
]) }}>
{{ $slot }}
</button>
// In your blade file
<x-green-button customClass="px-0">
{{ $person->FullName_fh }}
</x-green-button>