برچسب‌ها

tags-inputکامپوننت

ورودی چندمقداری که با Enter یا ویرگول فارسی هر عبارت را چیپ می‌کنه، متن چسبانده‌شده را می‌شکنه و تکراری‌ها را نمی‌پذیره.

ری‌اکتتیلویند

۲ / ۵

نصب

  1. با CLI

    اگر هنوز init نکردید، اول از راهنمای نصب پروژه را آماده کنید. بعد این دستور کامپوننت و وابستگی‌هاش را می‌نویسه.

    $ npx vibefarsi add tags-input
  2. نصب دستی

    محتوای تب «کد» را در components/ui/tags-input.tsx بگذارید.

    $ npm i lucide-react
    کپی کل فایلregistry json

استفاده

usage.tsx
1import { TagsInput } from "@/components/ui/tags-input"23<TagsInput defaultValue={["ری‌اکت", "تیلویند"]} max={5} onChange={setTags} />

پراپ‌ها

پراپنوعپیش‌فرضتوضیح
value / onChangestring[]-فهرست برچسب‌ها، کنترل‌شده یا آزاد.
maxnumber-سقف تعداد. شمارنده‌ی «۳ / ۵» زیر فیلد می‌آد و بعد از پر شدن، تایپ بسته میشه.
separatorsstring[]["،", ","]کاراکترهایی که موقع تایپ برچسب را ثبت می‌کنن. Enter همیشه ثبت می‌کنه.
validate(tag) => string | nulltrimقبل از افزودن اصلاح یا رد می‌کنه، مثلاً حروف کوچک کردن یا محدودیت طول.

نکته‌های راست‌چین

  • Backspace روی فیلد خالی آخرین چیپ را برمی‌داره و با ترک فیلد، متن نیمه‌کاره هم ثبت میشه.
  • هر چیپ dir="auto" داره تا برچسب انگلیسی کنار فارسی درست نمایش داده بشه.