Components
- 手风琴
- 提示
- 警告对话框
- 宽高比
- 头像
- 徽章
- 面包屑导航
- 按钮
- 按钮组
- 日历 Calendar
- 卡片
- Carousel
- 图表 Chart
- 复选框
- 折叠面板
- 组合框
- 命令
- 上下文菜单
- 数据表格 Data Table
- 日期选择器 Date Picker
- 对话框 Dialog
- 抽屉
- 下拉菜单
- Empty
- 字段
- 悬停卡片
- 输入
- 输入组
- 输入 OTP
- 项目
- Kbd
- 标签
- 菜单栏
- 原生选择框
- 导航菜单 Navigation Menu
- 分页
- 弹出框
- 进度 Progress
- 单选框组
- 可调整大小
- 滚动区域 Scroll Area
- 选择框
- 分隔符 Separator
- 侧边栏 Sheet
- 侧边栏 Sidebar
- 骨架屏
- 滑块
- Sonner
- 加载指示器 Spinner
- 开关
- 表格
- 标签页 Tabs
- 文本域
- 吐司
- 切换按钮 Toggle
- 切换组
- 提示 Tooltip
- 排版
import {
Select,
SelectContent,安装
pnpm dlx shadcn@latest add select
用法
import {
Select,
SelectContent,
SelectItem,
SelectTrigger,
SelectValue,
} from "@/components/ui/select"<Select>
<SelectTrigger className="w-[180px]">
<SelectValue placeholder="主题" />
</SelectTrigger>
<SelectContent>
<SelectItem value="light">浅色</SelectItem>
<SelectItem value="dark">深色</SelectItem>
<SelectItem value="system">系统</SelectItem>
</SelectContent>
</Select>示例
项目与触发器对齐
在 SelectContent 上使用 position 属性来控制对齐方式。当 position="item-aligned"(默认)时,弹出层定位使选中项出现在触发器上方。当 position="popper" 时,弹出层与触发器边缘对齐。
Toggle to align the item with the trigger.
"use client"
import * as React from "react"分组
使用 SelectGroup、SelectLabel 和 SelectSeparator 来组织项目。
import {
Select,
SelectContent,可滚动
一个拥有大量项目且可以滚动的选择框。
import {
Select,
SelectContent,禁用状态
import {
Select,
SelectContent,无效状态
在 Field 组件上添加 data-invalid 属性,并在 SelectTrigger 组件上添加 aria-invalid 属性以展示错误状态。
<Field data-invalid>
<FieldLabel>水果</FieldLabel>
<SelectTrigger aria-invalid>
<SelectValue />
</SelectTrigger>
</Field>Please select a fruit.
import { Field, FieldError, FieldLabel } from "@/components/ui/field"
import {
Select,API 参考
请参阅 Radix UI Select 文档。