Components
- 手风琴
- 提示
- 警告对话框
- 宽高比
- 头像
- 徽章
- 面包屑导航
- 按钮
- 按钮组
- 日历 Calendar
- 卡片
- 轮播图
- 图表 Chart
- 复选框
- 折叠面板
- 组合框
- 命令
- 上下文菜单
- 数据表格 Data Table
- 日期选择器 Date Picker
- 对话框 Dialog
- 方向
- 抽屉
- 下拉菜单
- 空状态
- 字段
- 悬停卡片
- 输入
- 输入组
- Input OTP
- 项目
- Kbd
- 标签
- 菜单栏
- 原生选择框
- 导航菜单 Navigation Menu
- 分页
- 弹出框
- 进度 Progress
- 单选框组
- 可调整大小
- 滚动区域 Scroll Area
- 选择框
- 分隔符 Separator
- 侧边栏 Sheet
- 侧边栏 Sidebar
- 骨架屏
- 滑块
- Sonner
- 加载指示器 Spinner
- 开关
- 表格
- 标签页 Tabs
- 文本域
- 吐司
- 切换按钮 Toggle
- 切换组
- 提示 Tooltip
- 排版
Processing payment...
$100.00
import {
Item,
ItemContent,安装
pnpm dlx shadcn@latest add spinner
用法
import { Spinner } from "@/components/ui/spinner"<Spinner />自定义
你可以通过编辑 Spinner 组件,将默认的加载图标替换为任何其他图标。
import { LoaderIcon } from "lucide-react"
import { cn } from "@/lib/utils"import { LoaderIcon } from "lucide-react"
import { cn } from "@/lib/utils"
function Spinner({ className, ...props }: React.ComponentProps<"svg">) {
return (
<LoaderIcon
role="status"
aria-label="加载中"
className={cn("size-4 animate-spin", className)}
{...props}
/>
)
}
export { Spinner }示例
大小
使用 size-* 工具类来改变加载指示器的大小。
import { Spinner } from "@/components/ui/spinner"
export function SpinnerSize() {颜色
在按钮中添加加载指示器以表示加载状态。将 <Spinner /> 放置在标签前并使用 data-icon="inline-start" 表示起始位置,或放置在标签后并使用 data-icon="inline-end" 表示结束位置。
import { Button } from "@/components/ui/button"
import { Spinner } from "@/components/ui/spinner"
标记
在标记中添加加载指示器以表示加载状态。将 <Spinner /> 放置在标签前并使用 data-icon="inline-start" 表示起始位置,或放置在标签后并使用 data-icon="inline-end" 表示结束位置。
SyncingUpdatingProcessing
import { Badge } from "@/components/ui/badge"
import { Spinner } from "@/components/ui/spinner"
输入组
在 <InputGroupAddon> 内可以放置加载指示器。
Validating...
import { ArrowUpIcon } from "lucide-react"
import {空状态
Processing your request
Please wait while we process your request. Do not refresh the page.
import { Button } from "@/components/ui/button"
import {
Empty,RTL
要在 shadcn/ui 中启用 RTL 支持,请参阅 RTL 配置指南。
جاري معالجة الدفع...
١٠٠.٠٠ دولار
"use client"
import * as React from "react"