Sections
Get Started
Components
- Accordion
- Alert
- Alert Dialog
- Aspect Ratio
- Avatar
- Badge
- Breadcrumb
- Button
- Button Group
- Calendar
- Card
- Carousel
- Chart
- Checkbox
- Collapsible
- Combobox
- Command
- Context Menu
- Data Table
- Date Picker
- Dialog
- Drawer
- Dropdown Menu
- Empty
- Field
- Form
- Hover Card
- Input
- Input Group
- Input OTP
- Item
- Kbd
- Label
- Menubar
- Native Select
- Navigation Menu
- Pagination
- Pin Input
- Popover
- Progress
- Radio Group
- Range Calendar
- Resizable
- Scroll Area
- Select
- Separator
- Sheet
- Sidebar
- Skeleton
- Slider
- Sonner
- Spinner
- Stepper
- Switch
- Table
- Tabs
- Tags Input
- Textarea
- Toast
- Toggle
- Toggle Group
- Tooltip
- Typography
Forms
<script setup lang="ts">
import { Bold } from 'lucide-vue-next'
import { Toggle } from '@/components/ui/toggle'
</script>
<template>
<Toggle aria-label="Toggle bold">
<Bold class="h-4 w-4" />
</Toggle>
</template>Installation
pnpm dlx shadcn-vue@latest add toggle
Usage
<script setup lang="ts">
import { Toggle } from '@/components/ui/toggle'
</script>
<template>
<Toggle>Toggle</Toggle>
</template>Examples
Default
<script setup lang="ts">
import { Bold } from 'lucide-vue-next'
import { Toggle } from '@/components/ui/toggle'
</script>
<template>
<Toggle aria-label="Toggle bold">
<Bold class="h-4 w-4" />
</Toggle>
</template>Outline
<script setup lang="ts">
import { Bold } from 'lucide-vue-next'
import { Toggle } from '@/components/ui/toggle'
</script>
<template>
<Toggle variant="outline" aria-label="Toggle bold">
<Bold />
</Toggle>
</template>With Text
<script setup lang="ts">
import { Italic } from 'lucide-vue-next'
import { Toggle } from '@/components/ui/toggle'
</script>
<template>
<Toggle aria-label="Toggle italic">
<Italic />
Italic
</Toggle>
</template>Small
<script setup lang="ts">
import { Italic } from 'lucide-vue-next'
import { Toggle } from '@/components/ui/toggle'
</script>
<template>
<Toggle size="sm" aria-label="Toggle italic">
<Italic />
</Toggle>
</template>Large
<script setup lang="ts">
import { Italic } from 'lucide-vue-next'
import { Toggle } from '@/components/ui/toggle'
</script>
<template>
<Toggle size="lg" aria-label="Toggle italic">
<Italic />
</Toggle>
</template>Disabled
<script setup lang="ts">
import { Underline } from 'lucide-vue-next'
import { Toggle } from '@/components/ui/toggle'
</script>
<template>
<Toggle aria-label="Toggle underline" disabled>
<Underline class="h-4 w-4" />
</Toggle>
</template>