メインコンテンツへスキップ

Switch スイッチ

2 つの排他的な状態を切り替えます。role="switch" のカスタムコントロールとして描画されます。

基本的な使い方​

制御スイッチ
オフ

現在の状態:オフ

import { useState } from 'react'
import { LhSwitch } from '@lh-ui/react'

export default function Demo() {
const [active, setActive] = useState(false)

return (
<>
<LhSwitch checked={active} onChange={(val) => setActive(val)} />
<LhSwitch
checked={active}
activeText="オン"
inactiveText="オフ"
onChange={(val) => setActive(val)}
/>
<LhSwitch disabled />
<LhSwitch loading />
</>
)
}

Switch Props​

プロパティ説明型使用可能な値デフォルト値
checked制御されたスイッチ状態boolean——
defaultChecked非制御のデフォルト状態boolean—false
disabled無効boolean—false
loading読み込み中boolean—false
activeTextオンの時のテキストstring—言語パック switch.on
inactiveTextオフの時のテキストstring—言語パック switch.off
sizeサイズ'large' | 'middle' | 'small'—ConfigProvider に準拠
themeVarsコンポーネントレベルのテーマ変数Record<string, string>——
sxクイックレイアウトプロパティSxProps——

Switch イベント​

イベント説明コールバックシグネチャVue 対応
onChange状態の変化(2 引数)(checked: boolean, event: MouseEvent | KeyboardEvent) => void@change
キーボード操作

スイッチは Enter / Space で切り替わり、ネイティブ checkbox の挙動と一致します。aria-checked が現在の状態と同期します。

スタイル​

import '@lh-ui/react/style/switch'