- Accordion
- Action Bar
- Alert
- Alert Dialog
- Angle Slider
- Aspect Ratio
- Attachment
- Avatar
- Avatar Group
- Badge
- Badge Overflow
- Banner
- Breadcrumb
- Bubble
- Button
- Button Group
- Calendar
- Card
- Carousel
- Chart
- Checkbox
- Checkbox Group
- Chip
- Circular Progress
- Client Only
- Collapsible
- Color Picker
- Color Swatch
- Combobox
- Combobox Advanced
- Command
- Compare Slider
- Composition
- Context Menu
- Cropper
- Data Grid
- Data Table
- Data Table Advanced
- Date Picker
- Dialog
- Direction Provider
- Drawer
- Dropdown Menu
- Editable
- Empty
- Field
- File Upload
- Form
- FPS
- Gauge
- Hitbox
- Hover Card
- Input
- Input Group
- Input OTP
- Item
- Kanban
- Kbd
- Kbd Advanced
- Key Value
- Label
- List
- Listbox
- Map
- Marker
- Marquee
- Mask Input
- Masonry
- Media Player
- Mention
- Menubar
- Message
- Message Scroller
- Native Select
- Navigation Menu
- Number Field
- Pagination
- Pending
- Phone Input
- Pin Input
- Popover
- Portal
- Presence
- Progress
- QR Code
- Questionnaire
- Radio Group
- Range Calendar
- Rating
- Relative Time Card
- Resizable
- Responsive Dialog
- Scroll Area
- Scroll Spy
- Scroller
- Segmented Input
- Select
- Selection Toolbar
- Separator
- Sheet
- Sidebar
- Skeleton
- Slider
- Software Purchase Card
- Sonner
- Sortable
- Speed Dial
- Spinner
- Stack
- Stat
- Status
- Stepper
- Stepper Advanced
- Swap
- Switch
- Table
- Tabs
- Tags Input
- Tags Input Advanced
- Textarea
- Time Picker
- Timeline
- Toast
- Toggle
- Toggle Group
- Tooltip
- Tour
- Typography
- Visually Hidden
- Visually Hidden Input
Komponen Item pada dasarnya adalah wadah flex sederhana yang bisa memuat konten apa pun. Pakai untuk menampilkan judul, keterangan, dan aksi. Kelompokkan dengan ItemGroup untuk membentuk daftar item.
Hasil serupa sebenarnya bisa dicapai dengan elemen div dan beberapa class. Tapi pola ini terlalu sering dipakai, jadi lebih praktis kalau sudah tersedia sebagai komponen siap pakai.
A simple item with title and description.
Installation
pnpm dlx shadcn-vue@latest add itemSalin dan tempel kode sumber di GitHub ke project Anda.
Sesuaikan path import dengan struktur project Anda.
Usage
<script setup lang="ts">
import {
Item,
ItemContent,
ItemDescription,
ItemFooter,
ItemHeader,
ItemMedia,
ItemTitle,
} from '@/components/ui/item'
</script>
<template>
<Item>
<ItemHeader>Item Header</ItemHeader>
<ItemMedia />
<ItemContent>
<ItemTitle>Item</ItemTitle>
<ItemDescription>Item</ItemDescription>
</ItemContent>
<ItemFooter>Item Footer</ItemFooter>
</Item>
</template>2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Examples
Varian
Standard styling with subtle background and borders.
Outlined style with clear borders and transparent background.
Subdued appearance with muted colors for secondary content.
Ukuran
Komponen Item punya beberapa ukuran untuk kebutuhan berbeda. Ukuran sm cocok untuk item ringkas, sedangkan default untuk item biasa.
A simple item with title and description.
Icon
New login detected from unknown device.
Avatar
ERLast seen 5 months ago
CN
LR
ERInvite your team to collaborate on this project.
Image
Grup
Header
Link
Untuk menampilkan item sebagai tautan, pakai prop as-child. State hover dan focus akan diterapkan pada elemen anchor-nya.
Dropdown
API Reference
Item
Komponen utama untuk menampilkan konten beserta media, judul, keterangan, dan aksinya.
| Prop | Tipe | Bawaan |
|---|---|---|
variant | "default" | "outline" | "muted" | "default" |
size | "default" | "sm" | "default" |
as-child | boolean | false |
<template>
<Item size="" variant="">
<ItemMedia />
<ItemContent>
<ItemTitle>Item</ItemTitle>
<ItemDescription>Item</ItemDescription>
</ItemContent>
<ItemActions />
</Item>
</template>Pakai prop as-child untuk menampilkan komponen Anda sendiri sebagai item, misalnya sebuah tautan. State hover dan focus akan diterapkan pada komponen tersebut.
<script setup lang="ts">
import {
Item,
ItemContent,
ItemDescription,
ItemMedia,
ItemTitle,
} from '@/components/ui/item'
</script>
<template>
<Item as-child>
<a href="/dashboard">
<ItemMedia variant="icon">
<Home />
</ItemMedia>
<ItemContent>
<ItemTitle>Dashboard</ItemTitle>
<ItemDescription>
Overview of your account and activity.
</ItemDescription>
</ItemContent>
</a>
</Item>
</template>ItemGroup
Komponen ItemGroup adalah wadah yang menyatukan item-item terkait dengan tampilan seragam.
| Prop | Tipe | Bawaan |
|---|---|---|
class | string |
<template>
<ItemGroup>
<Item />
<Item />
</ItemGroup>
</template>ItemSeparator
Komponen ItemSeparator adalah pemisah antar item di dalam sebuah item group.
| Prop | Tipe | Bawaan |
|---|---|---|
class | string |
<template>
<ItemGroup>
<Item />
<ItemSeparator />
<Item />
</ItemGroup>
</template>ItemMedia
Pakai komponen ItemMedia untuk menampilkan media seperti ikon, gambar, atau avatar.
| Prop | Tipe | Bawaan |
|---|---|---|
variant | "default" | "icon" | "image" | "default" |
class | string |
<template>
<ItemMedia variant="icon">
<Icon />
</ItemMedia>
</template><template>
<ItemMedia variant="image">
<img src="..." alt="...">
</ItemMedia>
</template>ItemContent
Komponen ItemContent membungkus judul dan keterangan item.
ItemContent boleh dilewati kalau Anda hanya butuh judul saja.
| Prop | Tipe | Bawaan |
|---|---|---|
class | string |
<template>
<ItemContent>
<ItemTitle>Item</ItemTitle>
<ItemDescription>Item</ItemDescription>
</ItemContent>
</template>ItemTitle
Pakai komponen ItemTitle untuk menampilkan judul item.
| Prop | Tipe | Bawaan |
|---|---|---|
class | string |
<template>
<ItemTitle>Item Title</ItemTitle>
</template>ItemDescription
Pakai komponen ItemDescription untuk menampilkan keterangan item.
| Prop | Tipe | Bawaan |
|---|---|---|
class | string |
<template>
<ItemDescription>Item description</ItemDescription>
</template>ItemActions
Pakai komponen ItemActions untuk menampilkan tombol aksi atau elemen interaktif lainnya.
| Prop | Tipe | Bawaan |
|---|---|---|
class | string |
<template>
<ItemActions>
<Button>Action</Button>
<Button>Action</Button>
</ItemActions>
</template>ItemHeader
Pakai komponen ItemHeader untuk menampilkan header di dalam item.
| Prop | Tipe | Bawaan |
|---|---|---|
class | string |
<template>
<ItemHeader>Item Header</ItemHeader>
</template>ItemFooter
Pakai komponen ItemFooter untuk menampilkan footer di dalam item.
| Prop | Tipe | Bawaan |
|---|---|---|
class | string |
<template>
<ItemFooter>Item Footer</ItemFooter>
</template>