VIRASTACKMask
  • Hakkında
  • Katkı
ViraStack Mask

Başlangıç

  • Giriş
  • llms.txt

Kullanım

  • useViraMask()
  • Özel maske
  • Validation
  • Helpers
  • Types
  • UI kütüphaneleri

Örnekler

  • Tümü
  • Alpha
  • CVV
  • E-posta
  • IBAN
  • Kart
  • Kredi kartı formu
  • Kullanıcı adı
  • Metin
  • Para birimi
  • Parola
  • Posta kodu
  • Sayısal
  • Son kullanma
  • Tarih
  • TCKN
  • Telefon
  • URL
  • Vergi no (VKN)

useViraMask()

Tek hook ile birden fazla alanı maskeleyin. Schema alan adları form alanlarıyla eşleşir.

Temel kullanım

rawValue: —

value: —

import { useForm } from "react-hook-form"
import { useViraMask } from "@virastack/mask"
 
function Example() {
  const form = useForm<{ phone: string }>()
  const { phone } = useViraMask({
    form,
    schema: { phone: "phone" },
  })
 
  const { rawValue, ...inputProps } = phone
 
  return <input {...inputProps} placeholder="(555) 555-5555" />
}

Schema

Her alan için üç yazım geçerlidir:

  • Preset string: { phone: "phone" }
  • Options nesnesi: { amount: { currency: { decimalSeparator: ",", thousandSeparator: ".", symbol: "₺" } } }
  • Preset + override: { card: { preset: "card", onCardTypeChange: fn } }

Tüm hazır maskeler için örnekler sayfasına bakın. Sıfırdan maske için custom mask.

Dönüş değeri

useViraMask(), schema’daki her anahtar için bir MaskField döner.rawValue’yu DOM’a yaymamak için ayırın — value inputProps içinde kalır: const { rawValue, ...inputProps } = phone

  • value: formatlı (display) değer
  • rawValue: formda tutulan ham değer
  • ref, name, onChange, onBlur, onFocus, onKeyDown
  • type, inputMode, autoComplete
  • aria-invalid, aria-describedby, title

React Hook Form

  • Her alan register edilir; doğrulama validate.maskFormat altında çalışır.
  • setValue ile forma ham değer yazılır (shouldValidate / shouldDirty / shouldTouch).
  • Doğrulama yalnızca validate: true ve değer boş değilken koşulur; ayrıntılar validation sayfasında.
ÖncekiGirişSonrakiÖzel maske

Bu sayfada

  • Temel kullanım
  • Schema
  • Dönüş değeri
  • React Hook Form
Hata mı var? Düzeltin