로고SEED Design

Switch

이 문서는 정리 중이에요. 문의 내용은 #_design_core 채널을 찾아주세요.

import { useState } from "react";
import { Switch } from "seed-design/ui/switch";

export default function SwitchPreview() {
  const [isChecked, setIsChecked] = useState(false);

  return <Switch checked={isChecked} onCheckedChange={setIsChecked} />;
}

Installation

npx @seed-design/cli@latest add switch
pnpm dlx @seed-design/cli@latest add switch
yarn dlx @seed-design/cli@latest add switch
bun x @seed-design/cli@latest add switch

Props

PropTypeDefault
asChild?
boolean
false
onCheckedChange?
((checked: boolean) => void)
-
defaultChecked?
boolean
-
checked?
boolean
-
required?
boolean
-
invalid?
boolean
-
disabled?
boolean
-
size?
"medium" | "small"
medium
label?
ReactNode
-
rootRef?
Ref<HTMLLabelElement>
-
inputProps?
InputHTMLAttributes<HTMLInputElement>
-

Examples

Medium

import { useState } from "react";
import { Switch } from "seed-design/ui/switch";

export default function SwitchMedium() {
  const [isChecked, setIsChecked] = useState(false);

  return <Switch size="medium" checked={isChecked} onCheckedChange={setIsChecked} />;
}

Small

import { useState } from "react";
import { Switch } from "seed-design/ui/switch";

export default function SwitchSmall() {
  const [isChecked, setIsChecked] = useState(false);

  return <Switch size="small" label="라벨" checked={isChecked} onCheckedChange={setIsChecked} />;
}

Disabled

import { Switch } from "seed-design/ui/switch";

export default function SwitchDisabled() {
  return (
    <div style={{ display: "flex", flexDirection: "column", gap: 10 }}>
      <Switch disabled />
      <Switch checked disabled />
    </div>
  );
}

Last updated on