Bileşenler
Switch
Hemen etki eden açık ya da kapalı bir ayar ve yanındaki etiket.
- Storybook
- Storybook
- Kaynak kod
- Kaynak kod
Aşağıdaki örnek Storybook’tan canlı yüklenir; denetimleri Storybook’ta açabilirsiniz.
Varsayılan
Bölüm başlığı “Varsayılan”Switch ray ile etiketi tek tıklama alanında toplar; etikete tıklamak da anahtarı değiştirir.
import { Switch } from '@bigbang/ui';
export default function Default() { return <Switch label="Seçenek etiketi" />;}Durumlar
Bölüm başlığı “Durumlar”Kapalı, açık, kaydediliyor (loading) ve devre dışı.
Kaydediliyor
import { Switch } from '@bigbang/ui';
export default function States() { return ( <div className="flex flex-col items-start gap-md"> <Switch label="Seçenek etiketi" /> <Switch label="Seçenek etiketi" defaultChecked /> <Switch label="Seçenek etiketi" defaultChecked loading loadingLabel="Kaydediliyor" /> <Switch label="Seçenek etiketi" disabled /> <Switch label="Seçenek etiketi" disabled defaultChecked /> </div> );}Açıklamalı
Bölüm başlığı “Açıklamalı”description etiketin altında durur ve anahtara aria-describedby ile bağlanır.
Seçenek açıklaması burada yer alır.
import { Switch } from '@bigbang/ui';
export default function WithDescription() { return <Switch label="Seçenek etiketi" description="Seçenek açıklaması burada yer alır." defaultChecked />;}Değişikliği kaydetme
Bölüm başlığı “Değişikliği kaydetme”Anahtar yeni durumu hemen gösterir; kayıt sürerken loading başparmakta dönen halka gösterir ve yeni değişiklikleri yok sayar.
import { Switch } from '@bigbang/ui';import { useState } from 'react';
export default function SavingChange() { const [checked, setChecked] = useState(false); const [loading, setLoading] = useState(false); return ( <Switch label="Seçenek etiketi" checked={checked} loading={loading} loadingLabel="Kaydediliyor" onCheckedChange={(next) => { setChecked(next); setLoading(true); setTimeout(() => setLoading(false), 1000); }} /> );}Açık ve koyu mod
Bölüm başlığı “Açık ve koyu mod”Açık ray color-action-primary-default dolgu alır.
Kaydediliyor
Kaydediliyor
import { Switch } from '@bigbang/ui';
export default function States() { return ( <div className="flex flex-col items-start gap-md"> <Switch label="Seçenek etiketi" /> <Switch label="Seçenek etiketi" defaultChecked /> <Switch label="Seçenek etiketi" defaultChecked loading loadingLabel="Kaydediliyor" /> <Switch label="Seçenek etiketi" disabled /> <Switch label="Seçenek etiketi" disabled defaultChecked /> </div> );}