Tabs
Tabs 컴포넌트는 동일한 공간에서 여러 컨텐츠 영역을 전환하여 표시할 수 있는 인 터페이스를 제공합니다.
가져오기
import { Tabs, TabsList, TabsTrigger, TabsContent } from 'react-components-library';
// 또는 중첩 구조로 사용
import { Tabs } from 'react-components-library';
// Tabs.List, Tabs.Trigger, Tabs.Content
기본 사용법
Account 설정
계정 설정을 변경할 수 있습니다.
비밀번호 변경
비밀번호를 변경할 수 있습니다.
<Tabs defaultValue="account">
<Tabs.List>
<Tabs.Trigger value="account">Account</Tabs.Trigger>
<Tabs.Trigger value="password">Password</Tabs.Trigger>
</Tabs.List>
<Tabs.Content value="account">
<h3>Account 설정</h3>
<p>계정 설정을 변경할 수 있습니다.</p>
</Tabs.Content>
<Tabs.Content value="password">
<h3>비밀번호 변경</h3>
<p>비밀번호를 변경할 수 있습니다.</p>
</Tabs.Content>
</Tabs>
제어 컴포넌트로 사용
계정 설정 내용
현재 선택된 탭: account
비밀번호 변경 내용
현재 선택된 탭: account
function ControlledTabs() {
const [tab, setTab] = useState('account');
return (
<Tabs value={tab} onValueChange={setTab}>
<Tabs.List>
<Tabs.Trigger value="account">Account</Tabs.Trigger>
<Tabs.Trigger value="password">Password</Tabs.Trigger>
</Tabs.List>
<Tabs.Content value="account">
<p>계정 설정 내용</p>
</Tabs.Content>
<Tabs.Content value="password">
<p>비밀번호 변경 내용</p>
</Tabs.Content>
</Tabs>
);
}
프로필 설정 예제
Make changes to your account here. Click save when you're done.
Update your password here. After saving, you'll be logged out.
<Tabs defaultValue="account">
<Tabs.List>
<Tabs.Trigger value="account">Account</Tabs.Trigger>
<Tabs.Trigger value="password">Password</Tabs.Trigger>
</Tabs.List>
<Tabs.Content value="account">
<div style={{ padding: '16px 0' }}>
<p style={{ marginBottom: '24px', color: '#64748b' }}>
Make changes to your account here. Click save when you're done.
</p>
<div style={{ marginBottom: '16px' }}>
<Label htmlFor="name">Name</Label>
<Input
id="name"
defaultValue="Pietro Schirano"
style={{ width: '100%' }}
/>
</div>
<div style={{ marginBottom: '24px' }}>
<Label htmlFor="username">Username</Label>
<Input
id="username"
defaultValue="@skirano"
style={{ width: '100%' }}
/>
</div>
<Button variant="primary">Save changes</Button>
</div>
</Tabs.Content>
<Tabs.Content value="password">
{/* 비밀번호 설정 내용 */}
</Tabs.Content>
</Tabs>