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
- Direction
- Drawer
- Dropdown Menu
- Empty
- Field
- Hover Card
- Input
- Input Group
- Input OTP
- Item
- Kbd
- Label
- Menubar
- Native Select
- Navigation Menu
- Pagination
- Popover
- Progress
- Radio Group
- Resizable
- Scroll Area
- Select
- Separator
- Sheet
- Sidebar
- Skeleton
- Slider
- Sonner
- Spinner
- Switch
- Table
- Tabs
- Textarea
- Toast
- Toggle
- Toggle Group
- Tooltip
- Typography
Get Started
如需样式化的 select 组件,请参见 Select 组件。
import {
NativeSelect,
NativeSelectOption,安装
pnpm dlx shadcn@latest add native-select
用法
import {
NativeSelect,
NativeSelectOptGroup,
NativeSelectOption,
} from "@/components/ui/native-select"<NativeSelect>
<NativeSelectOption value="">选择一种水果</NativeSelectOption>
<NativeSelectOption value="apple">苹果</NativeSelectOption>
<NativeSelectOption value="banana">香蕉</NativeSelectOption>
<NativeSelectOption value="blueberry">蓝莓</NativeSelectOption>
<NativeSelectOption value="pineapple">菠萝</NativeSelectOption>
</NativeSelect>示例
分组
使用 NativeSelectOptGroup 可将选项组织成分类。
import {
NativeSelect,
NativeSelectOptGroup,禁用
给 NativeSelect 组件添加 disabled 属性即可禁用 select。
import {
NativeSelect,
NativeSelectOption,无效
使用 aria-invalid 显示校验错误,并给 Field 组件添加 data-invalid 属性以应用样式。
import {
NativeSelect,
NativeSelectOption,Native Select 与 Select
- 在需要原生浏览器行为、更好性能或面向移动端优化的下拉框时,使用
NativeSelect。 - 在需要自定义样式、动画或复杂交互时,使用
Select。
RTL
要在 shadcn/ui 中启用 RTL 支持,请参见 RTL 配置指南。
"use client"
import * as React from "react"API 参考
NativeSelect
用于包裹原生 HTML select 元素的主 select 组件。
<NativeSelect>
<NativeSelectOption value="option1">Option 1</NativeSelectOption>
<NativeSelectOption value="option2">Option 2</NativeSelectOption>
</NativeSelect>NativeSelectOption
表示 select 中的单个选项。
| Prop | Type | Default |
|---|---|---|
value | string | |
disabled | boolean | false |
NativeSelectOptGroup
将相关选项分组,以便更好地组织。
| Prop | Type | Default |
|---|---|---|
label | string | |
disabled | boolean | false |
<NativeSelectOptGroup label="Fruits">
<NativeSelectOption value="apple">Apple</NativeSelectOption>
<NativeSelectOption value="banana">Banana</NativeSelectOption>
</NativeSelectOptGroup>