Textarea
Yorum, açıklama ve mesajlar için çok satırlı bir metin girişi. Bir Field içinde kullanıldığında id'sini, açıklamasını, hatasını ve zorunlu state'ini oradan alır.
<Textarea aria-label="Mesaj" placeholder="Bir mesaj yaz…" />Import
import { Textarea } from "@merid/react";Örnekler
Boyutlandırma
Boyutlandırma tutamacı varsayılan olarak vertical'dır. Layout'un değişmemesi gerekiyorsa none kullan, both'u ise nadiren.
<Textarea rows={2} placeholder="resize vertical (varsayılan)" />
<Textarea rows={2} resize="none" placeholder="resize none" />
<Textarea rows={2} resize="both" placeholder="resize both" />Geçersiz ve devre dışı
Sayaçlı controlled kullanım
0 / 140
const [value, setValue] = useState("");
<Textarea
aria-label="Durum"
value={value}
maxLength={140}
onChange={(event) => setValue(event.target.value)}
/>
<Text size="xs" tone="muted" numeric>{value.length} / 140</Text>API referansı
Textarea ref'ini <textarea>'ya iletir ve diğer tüm native attribute'ları olduğu gibi geçirir.
| Prop | Tip | Varsayılan | Açıklama |
|---|---|---|---|
resize | "none" | "vertical" | "both" | "vertical" | Kullanıcının boyutlandırma tutamacı. |
invalid | boolean | – | Geçersiz stilini (`data-invalid`) ve `aria-invalid`'i zorlar. Field içinde, Field'ın hatasından türetilir. |
rows | number | 4 | Görünen metin satırı sayısı (native). |
Stil verme
| Seçici | Değerler |
|---|---|
.mrd-textarea | <textarea> elemanı |
data-resize | none · vertical · both |
data-invalid | Geçersizken bulunur; danger kenarlığını çizer (anlamı aria-invalid taşır) |
Textarea, input.css içindeki Input stillerini paylaşır; boyut varyantı yoktur.
Erişilebilirlik
- Field ya da Label ile görünür bir etiket ver.
- Karakter sayacı gösteriyorsan
maxLengthile görünen sayıyı senkron tut; sayacıaria-describedbyile bağlamayı düşün.
| Tuş | Ne yapar |
|---|---|
| Tab | Focus'u textarea'ya taşır. |
| Enter | Satır sonu ekler (formu göndermez). |
Kullanım ilkeleri
Yap
rows değerini beklenen cevap uzunluğuna göre ayarla; kişi ne kadar yazacağını anlasın.
Kaçın
Ad ya da e-posta gibi tek satırlık değerler için Textarea kullanmak.