TR
Başlangıç
64 · Formlar

Etiket girişi

acun:tag-input serbest ya da listeden etiket girişi sağlar. Öneriler Türkçe harf kurallarına göre büyük/küçük harf ayırmadan aranır. Uzun bir listeden bir ya da birden çok değer seçtirmek için Combobox sayfasındaki acun:combobox'ı kullanın.

PRO acun:tag-input
01

Etiket girişi

Metni yazıp Enter ya da virgül ile etikete çevirin; boş kutuda Backspace son etiketi siler. Aynı etiket iki kez eklenmez. Başlangıç etiketleri value ile dizi olarak verilir.

CANLI ÖRNEK
<acun:tag-input name="etiketler" label="Etiketler" :value="['öncelikli', 'toptan']" />
PropDeğerler
valueBaşlangıç etiketleri (dizi)
placeholderYazıp Enter'a basın
02

Listeden seçim ve sınır

suggestions verildiğinde yalnızca bu listedeki değerler eklenebilir ve yazarken en fazla altı öneri gösterilir. max eklenebilecek etiket sayısını sınırlar.

CANLI ÖRNEK
<acun:tag-input name="kategoriler" label="Kategoriler" :suggestions="['Elektronik', 'Giyim', 'Kitap', 'Ev ve yaşam', 'Spor']" :value="['Elektronik']" :max="3" />
PropDeğerler
suggestionsİzin verilen değerler
maxEn fazla etiket sayısı
03

Pasif

disabled bileşeni kilitler ve gri arka planla gösterir: kutuya yazılamaz ve etiketlerin silme düğmeleri gizlenir. Klasik formda gizli alanlar da devre dışı kalır, yani değer gönderilmez.

CANLI ÖRNEK
<acun:tag-input name="kapali_etiketler" label="Etiketler" :value="['öncelikli', 'toptan']" disabled />
PropDeğerler
disabledtrue | false (varsayılan false)
04

Alpine ile

Alpine sayfalarında bileşen x-model ile dışarıdaki bir diziye bağlanır; etiket eklendikçe dizi, dizi değiştikçe bileşen güncellenir. class, data-* gibi diğer nitelikler bileşenin dış kapsayıcısına eklenir.

CANLI ÖRNEK
<div x-data="{ etiketler: ['öncelikli'] }" class="space-y-2">
    <acun:tag-input x-model="etiketler" label="Etiketler" />
    <p class="text-sm text-gray-600 dark:text-zinc-400">Etiketler: <span x-text="etiketler.join(', ')"></span></p>
</div>
PropDeğerler
x-modelDizi
classDış kapsayıcıya eklenir
05

Formda ve Livewire ile

Klasik formda her etiket name[] adlı gizli alanla gönderilir. wire:model verildiğinde dizi doğrudan Livewire özelliğine yazılır; gizli alanlar yine özelliğin adıyla eklenir, böylece acun:form dirty-check ve acun:form-actions etiket değişikliğini görür. Etiket eklenince ya da silinince bileşen change olayı yayınlar; kutuya yazılan metin değişiklik sayılmaz. Bileşen doğrulama hatasını kendisi göstermez; gerekirse @error ile ekleyin.

BLADE
<acun:tag-input wire:model="etiketler" label="Etiketler" :suggestions="$etiketListesi" />
@error('etiketler')
    <p class="text-sm text-red-600 dark:text-red-400">{{ $message }}</p>
@enderror
PropDeğerler
wire:modelDizi
changeEtiket eklenince ya da silinince (kabarcıklanır)
API

Prop'lar ve slot'lar

Bileşenin kabul ettiği değerler.

PropVarsayılanAçıklama
labelnullÜstteki etiket
value[]Başlangıç etiketleri
placeholderYazıp Enter'a basınBoş kutudaki metin
suggestions[]Verilirse yalnızca bu listeden seçilebilir
maxnullEn fazla etiket sayısı
disabledfalseYazmayı ve silmeyi kapatır; gizli alanlar gönderilmez
wire:model / x-model — Livewire ya da Alpine bağlaması (dizi)
Slot'lar: name ve id alana (ve gizli alanlara) gider; class, data-* gibi diğer nitelikler bileşenin dış kapsayıcısına eklenir.
Acun UI · Etiket girişiDetaylı kullanım ve örnekler