Bileşenler
RadioGroup
Birbirini dışlayan seçenekleri bir başlık altında toplayan ve tek seçime izin veren grup.
- 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”RadioGroup bir <fieldset> çizer; label başlık olur. Her öğe bir Radio’dur ve değeri value ile verilir.
Bir seçenek seçin.
import { Radio, RadioGroup } from '@bigbang/ui';
export default function Default() { return ( <RadioGroup label="Grup etiketi" description="Bir seçenek seçin." defaultValue="one"> <Radio value="one" label="Birinci seçenek" /> <Radio value="two" label="İkinci seçenek" /> <Radio value="three" label="Üçüncü seçenek" /> </RadioGroup> );}Açıklamalı öğeler
Bölüm başlığı “Açıklamalı öğeler”Radio’nun description metni etiketin altında durur ve öğeye aria-describedby ile bağlanır.
import { Radio, RadioGroup } from '@bigbang/ui';
export default function WithDescriptions() { return ( <RadioGroup label="Grup etiketi" defaultValue="one"> <Radio value="one" label="Birinci seçenek" description="Seçenek açıklaması burada yer alır." /> <Radio value="two" label="İkinci seçenek" description="Seçenek açıklaması burada yer alır." /> </RadioGroup> );}Kontrollü ve yatay
Bölüm başlığı “Kontrollü ve yatay”value ve onValueChange ile seçimi siz tutarsınız. orientation="horizontal" kısa seçenekleri bir satıra dizer.
oneimport { Radio, RadioGroup } from '@bigbang/ui';import { useState } from 'react';
export default function Controlled() { const [value, setValue] = useState('one'); return ( <div className="flex flex-col gap-md"> <RadioGroup label="Grup etiketi" value={value} onValueChange={setValue} orientation="horizontal"> <Radio value="one" label="Birinci seçenek" /> <Radio value="two" label="İkinci seçenek" /> <Radio value="three" label="Üçüncü seçenek" /> </RadioGroup> <code className="type-body-sm text-fg-subtle">{value}</code> </div> );}Durumlar
Bölüm başlığı “Durumlar”Radio’daki disabled yalnızca o öğeyi, RadioGroup’taki disabled tüm grubu kapatır.
import { Radio, RadioGroup } from '@bigbang/ui';
export default function States() { return ( <div className="flex flex-col gap-xl"> <RadioGroup label="Grup etiketi" defaultValue="one"> <Radio value="one" label="Birinci seçenek" /> <Radio value="two" label="İkinci seçenek" disabled /> </RadioGroup> <RadioGroup label="Grup etiketi" defaultValue="one" disabled> <Radio value="one" label="Birinci seçenek" /> <Radio value="two" label="İkinci seçenek" /> </RadioGroup> </div> );}Geçersiz
Bölüm başlığı “Geçersiz”error verildiğinde grup aria-invalid alır ve tüm daireler tehlike kenarlığı gösterir.
Devam etmek için bir seçenek seçin.
import { Radio, RadioGroup } from '@bigbang/ui';
export default function Invalid() { return ( <> <RadioGroup label="Grup etiketi" required error="Devam etmek için bir seçenek seçin."> <Radio value="one" label="Birinci seçenek" /> <Radio value="two" label="İkinci seçenek" /> </RadioGroup> </> );}Açık ve koyu mod
Bölüm başlığı “Açık ve koyu mod”Seçili daire color-action-primary-default dolgu alır.
Devam etmek için bir seçenek seçin.
Devam etmek için bir seçenek seçin.
import { Radio, RadioGroup } from '@bigbang/ui';
export default function Invalid() { return ( <> <RadioGroup label="Grup etiketi" required error="Devam etmek için bir seçenek seçin."> <Radio value="one" label="Birinci seçenek" /> <Radio value="two" label="İkinci seçenek" /> </RadioGroup> </> );}