Gyoza UI

Button

汎用的なボタンコンポーネント

Button

カスタマイズ可能なボタンコンポーネントです。複数のバリアントとサイズをサポートしています。

インストール

npx shadcn@latest add https://your-registry-url.com/r/button.json

使い方

import { Button } from "@/components/ui/button"

export default function Example() {
  return <Button>Click me</Button>
}

バリアント

Default

<Button variant="default">Default</Button>

Destructive

<Button variant="destructive">Destructive</Button>

Outline

<Button variant="outline">Outline</Button>

Secondary

<Button variant="secondary">Secondary</Button>

Ghost

<Button variant="ghost">Ghost</Button>
<Button variant="link">Link</Button>

サイズ

<Button size="default">Default</Button>
<Button size="sm">Small</Button>
<Button size="lg">Large</Button>
<Button size="icon">
  <Icon />
</Button>

Props

PropTypeDefaultDescription
variant"default" | "destructive" | "outline" | "secondary" | "ghost" | "link""default"ボタンのスタイルバリアント
size"default" | "sm" | "lg" | "icon""default"ボタンのサイズ
asChildbooleanfalseSlotコンポーネントとして使用

技術的詳細

  • Radix UIの@radix-ui/react-slotを使用
  • class-variance-authorityでバリアント管理
  • Tailwind CSSでスタイリング