TR
Başlangıç
47 · Gelişmiş UI

Yıldız puanı

Yıldızlarla puan vermeyi ya da mevcut bir puanı göstermeyi sağlar. Düz bir formda name ile, Livewire'da wire:model, Alpine'de x-model ile kullanılır; salt okunur modda yalnızca gösterim yapar.

PRO acun:rating
01

Temel kullanım

Yıldızların üzerine gelince önizleme görünür, tıklayınca puan seçilir. value başlangıç puanıdır; label puanın neyle ilgili olduğunu ekran okuyucuya söyler.

CANLI ÖRNEK
<acun:rating :value="3" label="Sipariş memnuniyeti" />
PropDeğerler
valueBaşlangıç puanı (tam sayı)
labelEkran okuyucu adı; varsayılan "Puan"
02

Salt okunur

readonly tıklanamayan bir gösterim çizer; ekran okuyucu puanı "4 / 5" biçiminde okur. Kesirli puanlarda yalnızca tam yıldızlar dolar.

CANLI ÖRNEK
<div class="flex items-center gap-3">
    <acun:rating :value="4" readonly />
    <span class="text-sm text-gray-600 dark:text-zinc-400">4,0 · 128 değerlendirme</span>
</div>
PropDeğerler
readonlytrue | false
03

Boyutlar

size yıldızların boyutunu belirler; varsayılan md. Tablo satırlarında sm, ürün ya da hizmet başlıklarında lg uygundur.

CANLI ÖRNEK
<div class="flex flex-wrap items-center gap-8">
    <acun:rating :value="4" readonly size="sm" />
    <acun:rating :value="4" readonly />
    <acun:rating :value="4" readonly size="lg" />
</div>
PropDeğerler
sizesm | md | lg
04

Yıldız sayısı

max gösterilen yıldız sayısını belirler; varsayılan 5.

CANLI ÖRNEK
<acun:rating :value="7" :max="10" readonly />
PropDeğerler
maxYıldız sayısı
05

Form içinde

name verildiğinde bileşen seçili puanı gizli bir alanla formla birlikte gönderir; puan seçilmemişse (0) alan boş gider. Salt okunur modda gizli alan eklenmez.

BLADE
<form method="POST" action="{{ route('siparisler.degerlendir', $siparis) }}">
    @csrf
    <acun:rating name="puan" :value="old('puan', 0)" label="Sipariş memnuniyeti" />
    <acun:button type="submit" size="sm" class="mt-4">Gönder</acun:button>
</form>
PropDeğerler
nameForm alanının adı
06

Alpine ile

x-model seçilen puanı bir Alpine değişkenine bağlar; değişken dışarıdan değişirse yıldızlar da güncellenir.

CANLI ÖRNEK
<div x-data="{ puan: 3 }" class="flex items-center gap-3">
    <acun:rating x-model="puan" label="Sipariş memnuniyeti" />
    <span class="text-sm text-gray-600 dark:text-zinc-400">Seçilen: <span x-text="puan"></span> / 5</span>
</div>
PropDeğerler
x-modelAlpine değişkeni
07

Livewire ile

wire:model ile seçilen puan Livewire özelliğine yazılır; .live eklenirse her tıklamada sunucuya gider. Puan, özelliğin adıyla bir gizli alanda da tutulur ve tıklamada change olayı yayınlanır; böylece acun:form dirty-check ve acun:form-actions değişikliği görür.

BLADE
<acun:rating wire:model.live="puan" label="Sipariş memnuniyeti" />
PropDeğerler
wire:modelLivewire özelliği
API

Prop'lar ve slot'lar

Bileşenin kabul ettiği değerler.

PropVarsayılanAçıklama
value0Başlangıç puanı
max5Yıldız sayısı
readonlyfalseSalt okunur gösterim
sizemdsm · md · lg
labelnullEkran okuyucu adı; varsayılan "Puan", salt okunurda "değer / max"
namenullDüz formlar için alan adı; puan gizli bir alanla gönderilir (salt okunurda yok)
Acun UI · Yıldız puanıDetaylı kullanım ve örnekler