Components
@shadcn/react
@shadcn/helpers
Utilities
import { Button } from "@/components/ui/button"
import {
DropdownMenu,安装#
pnpm dlx shadcn@latest add dropdown-menu
使用方法#
import { Button } from "@/components/ui/button"
import {
DropdownMenu,
DropdownMenuContent,
DropdownMenuGroup,
DropdownMenuItem,
DropdownMenuLabel,
DropdownMenuSeparator,
DropdownMenuTrigger,
} from "@/components/ui/dropdown-menu"<DropdownMenu>
<DropdownMenuTrigger asChild>
<Button variant="outline">打开</Button>
</DropdownMenuTrigger>
<DropdownMenuContent>
<DropdownMenuGroup>
<DropdownMenuLabel>我的账户</DropdownMenuLabel>
<DropdownMenuItem>个人资料</DropdownMenuItem>
<DropdownMenuItem>账单</DropdownMenuItem>
</DropdownMenuGroup>
<DropdownMenuSeparator />
<DropdownMenuGroup>
<DropdownMenuItem>团队</DropdownMenuItem>
<DropdownMenuItem>订阅</DropdownMenuItem>
</DropdownMenuGroup>
</DropdownMenuContent>
</DropdownMenu>组合#
使用以下组合来构建 DropdownMenu:
DropdownMenu
├── DropdownMenuTrigger
└── DropdownMenuContent
├── DropdownMenuGroup
│ ├── DropdownMenuLabel
│ ├── DropdownMenuItem
│ └── DropdownMenuItem
├── DropdownMenuSeparator
├── DropdownMenuGroup
│ ├── DropdownMenuLabel
│ ├── DropdownMenuCheckboxItem
│ └── DropdownMenuCheckboxItem
├── DropdownMenuSeparator
├── DropdownMenuGroup
│ ├── DropdownMenuLabel
│ └── DropdownMenuRadioGroup
│ ├── DropdownMenuRadioItem
│ └── DropdownMenuRadioItem
└── DropdownMenuSub
├── DropdownMenuSubTrigger
└── DropdownMenuSubContent
└── DropdownMenuGroup
├── DropdownMenuLabel
├── DropdownMenuItem
└── DropdownMenuItem基础#
带标签和分割线的基础下拉菜单。
import { Button } from "@/components/ui/button"
import {
DropdownMenu,子菜单#
使用 DropdownMenuSub 嵌套次级操作。
import { Button } from "@/components/ui/button"
import {
DropdownMenu,快捷键#
添加 DropdownMenuShortcut 显示键盘提示。
import { Button } from "@/components/ui/button"
import {
DropdownMenu,图标#
将图标与标签结合,便于快速扫描。
import {
CreditCardIcon,
LogOutIcon,复选框#
使用 DropdownMenuCheckboxItem 实现切换功能。
"use client"
import * as React from "react"复选框图标#
为复选框项添加图标。
"use client"
import * as React from "react"单选组#
使用 DropdownMenuRadioGroup 实现互斥选择。
"use client"
import * as React from "react"单选图标#
带图标展示单选选项。
"use client"
import * as React from "react"破坏性#
对不可逆操作使用 variant="destructive"。
import { PencilIcon, ShareIcon, TrashIcon } from "lucide-react"
import { Button } from "@/components/ui/button"头像#
通过头像触发的账户切换下拉菜单。
import {
BadgeCheckIcon,
BellIcon,复杂#
结合分组、图标和子菜单的丰富示例。
"use client"
import * as React from "react"RTL#
要在 shadcn/ui 中启用 RTL 支持,请参见 RTL 配置指南。
"use client"
import * as React from "react"API 参考#
查看 Radix UI 文档 获取完整 API 参考。