フォームと選択@neumorphism-ui/select

Select

native select、optgroup、option を inset field と装飾用 chevron とともに使用します。モバイルでは platform picker を維持し、native form 送信にも対応します。

@neumorphism-ui/select
Registry JSON

プレビュー

インストール

インストール: selectnpx shadcn@latest add @neumorphism-ui/select

CLI が npm 依存関係、base token、utils、コンポーネントソースを順番に処理します。

この Registry を初めて使う場合は、先に namespace の設定 を完了してください。

使い方

使い方: インストールnpx shadcn@latest add @neumorphism-ui/select @neumorphism-ui/label

Import

Select の import コード
import {
  Select,
  SelectGroup,
  SelectItem,
} from "@/components/ui/select"
import { Label } from "@/components/ui/label"

Example

Select の使用コード
<div className="grid gap-2">
  <Label htmlFor="role">役割</Label>
  <Select id="role" name="role" defaultValue="designer">
    <SelectItem value="designer">デザイナー</SelectItem>
    <SelectItem value="developer">開発者</SelectItem>
    <SelectItem value="founder">創業者</SelectItem>
  </Select>
</div>

API リファレンス

コンポーネントプロパティ型デフォルト説明
Selectvalue / defaultValuestring | string[]—制御された選択値、または非制御時の初期値です。
SelectonChangeReact.ChangeEventHandler<HTMLSelectElement>—native select の値が変わったときに呼び出されます。
Selectdisabled / required / multiplebooleanfalsenative select の制約と複数選択を設定します。
SelectItemvalue必須string | number | readonly string[]—option が送信する値です。
SelectGrouplabel必須string—optgroup の選択肢グループ名です。

アクセシビリティ

  • 01

    Label の htmlFor と Select の id を関連付けてください。

  • 02

    最初の option を placeholder として使う場合は、空の value と disabled を組み合わせ、実際の Label も維持してください。

  • 03

    native select を使用するため、OS のキーボード操作とモバイル picker の動作が維持されます。