チェックボックスグループ

CheckboxGroupを使用すると、ユーザーは選択肢のリストから1つ以上の項目を選択できます。


インストール

npx nextui-cli@latest add checkbox
上記のコマンドは個別インストール専用です。もし、 @nextui-org/react がグローバルにインストール済みであれば、このステップはスキップできます。

インポート

NextUIは、チェックボックス関連のコンポーネントを2つエクスポートします。

  • CheckboxGroup: ルートコンポーネントで、ラベルとラッパーをラップします。
  • Checkbox: チェックボックスコンポーネント。

使い方

無効

水平

制御された

value および onValueChange プロパティを使用して、チェックボックスの入力値を制御できます。

無効な状態

スロット

  • base: チェックボックスグループのルートラッパーで、ラベルとラッパーをラップします。
  • wrapper: チェックボックスグループのラッパーで、すべてのチェックボックスをラップします。
  • label: チェックボックスグループのラベルで、ラッパーの前に配置されます。
  • description: チェックボックスグループの説明。
  • errorMessage: チェックボックスグループのエラーメッセージ。

カスタムスタイル

コンポーネントスロットにカスタムの Tailwind CSS クラスを渡すことで、CheckboxGroup コンポーネントをカスタマイズできます。

カスタム実装

チェックボックスをさらにカスタマイズする必要がある場合は、useCheckboxGroup フックを使用して独自の実装を作成できます。

: 上記のスタイルを実装するために、Tailwind Variants を使用しました。同じ結果を得るために、clsx のような他のライブラリも使用できます。

API

チェックボックスグループのプロパティ

属性説明デフォルト
childrenReactNode[] | ReactNode[]チェックボックスの項目。-
orientationvertical | horizontalチェックボックスグループの項目が整列する軸。vertical
colordefault | primary | secondary | success | warning | dangerチェックボックスの色。primary
sizexs | sm | md | lg | xlチェックボックスのサイズ。md
radiusnone | base | xs | sm | md | lg | xl | fullチェックボックスの角丸。md
namestringHTMLフォームを送信する際に使用される CheckboxGroup の名前。-
labelstringCheckboxGroup のラベル。-
valuestring[]現在選択されている値。(制御された状態)。-
lineThroughbooleanチェックボックスのラベルに打ち消し線を引くかどうか。false
defaultValuestring[]デフォルトで選択されている値。(非制御状態)。-
isInvalidbooleanチェックボックスグループが無効かどうか。false
validationStatevalid | invalid入力が「有効」または「無効」の視覚的なスタイルを表示するかどうか。(非推奨)代わりに isInvalid を使用してください。-
descriptionReactNodeチェックボックスグループの説明。-
errorMessageReactNode | ((v: ValidationResult) => ReactNode)チェックボックスグループのエラーメッセージ。-
validate(value: string[]) => ValidationError | true | null | undefinedコミット時(例:フォーカスが外れたとき)に入力値を検証し、無効な値に対してエラーメッセージを返します。 validationBehaviornative に設定されている場合、検証エラーはフォーム送信時に表示されます。リアルタイム検証には、isInvalid プロパティを使用してください。-
validationBehaviornative | aria値が欠落しているか無効な場合にフォーム送信を防ぐためにネイティブ HTML フォーム検証を使用するか、ARIA を介してフィールドを必須または無効としてマークするかどうか。aria
isDisabledbooleanチェックボックスグループが無効になっているかどうか。false
isRequiredbooleanフォーム送信前にユーザーがチェックボックスへの入力を必須とするかどうか。false
isReadOnlybooleanチェックボックスを選択できるが、ユーザーが変更できないかどうか。-
disableAnimationbooleanアニメーションを無効にするかどうか。false
classNamesRecord<"base"| "wrapper"| "label", string>チェックボックスグループのスロットにカスタムクラス名を設定できます。-

チェックボックスグループのイベント

属性説明
onChange(value: string[]) => void値が変更されたときに呼び出されるハンドラー。