Skyroc UI
反馈

Alert

用于向用户传达重要信息或反馈的提示组件

提示(Alert)用于在页面中展示简短的提示信息,向用户传达操作结果、系统状态或需要关注的内容。

import { Alert, AlertRoot, AlertTitle, AlertDescription, AlertWrapper } from '@skyroc/web-ui';

何时使用

  • 需要向用户反馈操作结果时(如成功、失败、警告)。
  • 展示系统级消息或状态变化(如网络错误、版本更新)。
  • 在表单或流程中给予用户必要的提示信息。
  • 相比 Toast,Alert 更适合需要持续展示在页面中、不会自动消失的场景。

颜色

Alert 提供 8 种主题颜色,每种颜色都有其语义含义:

颜色语义适用场景
primary主要提示常规信息、引导操作
destructive危险警告错误信息、不可逆操作警告
success成功提示操作成功、流程完成
warning警告提示需要注意的潜在问题
info信息提示中性信息、辅助说明
carbon中性深色不带语义倾向的通用提示
secondary次级提示低优先级信息、辅助性提示
accent强调提示需要特殊视觉关注的信息
Preview
Code
Loading...

变体

通过 variant 控制 Alert 的视觉强度,从高到低依次为:

变体视觉强度适用场景
solid最强紧急信息,填充背景色
pure较强中性卡片风格,标题 + 描述场景
outline中等常规提示,实线边框
soft轻量提示,淡色背景无边框
ghost最低带边框的淡色背景(默认)
Preview
Code
Loading...

描述文本

通过 titledescription 组合展示标题与补充说明,适合需要更多上下文的提示场景。

Preview
Code
Loading...

图标

通过 icon 插槽在 Alert 起始位置放置图标,增强信息的可识别性。图标会自动继承当前颜色主题。

Preview
Code
Loading...

完整示例

结合 icontitledescriptiontrailing 插槽,构建功能完整的提示组件。trailing 可放置关闭按钮或其他操作。

Preview
Code
Loading...

尺寸

通过 size 调整 Alert 的字号与间距,从 xs2xl 共 6 个尺寸。

尺寸字号内间距适用场景
xs10pxpx-2 py-1.75紧凑嵌套、辅助信息
sm12pxpx-3 py-2.5侧边栏、次级面板
md14pxpx-4 py-3常规场景(默认)
lg16pxpx-5 py-3.5强调内容、重要通知
xl18pxpx-6 py-4突出信息面板
2xl20pxpx-7 py-4.5首屏公告、大幅展示
Preview
Code
Loading...

API

Alert

通用属性参考:支持原生 div 元素的所有属性。

属性说明类型默认值
color主题颜色'primary' | 'destructive' | 'success' | 'warning' | 'info' | 'carbon' | 'secondary' | 'accent''primary'
variant视觉样式'solid' | 'pure' | 'outline' | 'soft' | 'ghost''ghost'
size尺寸,影响字号与间距'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl''md'
title标题文本ReactNode-
description描述文本,显示在标题下方ReactNode-
icon图标,显示在 Alert 起始位置ReactNode-
leading前置插槽,位于图标之前ReactNode-
trailing后置插槽,位于内容区之后ReactNode-
classNames各 slot 的自定义 class(root / wrapper / title / description / icon / close / action)AlertClassNames-
titleProps传递给 AlertTitle 的额外 propsAlertTitleProps-
descriptionProps传递给 AlertDescription 的额外 propsAlertDescriptionProps-
wrapperProps传递给 AlertWrapper 的额外 propsAlertWrapperProps-

类型

AlertClassNames

各 slot 的自定义 class,用于精细化控制 Alert 各部分的样式。

字段类型说明
rootClassValue根容器的 class。
wrapperClassValue内容包裹区的 class。
titleClassValue标题的 class。
descriptionClassValue描述文本的 class。
iconClassValue图标的 class。
closeClassValue关闭按钮的 class。
actionClassValue操作区域的 class。

AlertTitleProps

标题子组件的属性,继承原生 div 元素的所有属性。

字段类型说明
classNameClassValue自定义 class。
size'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl'尺寸,影响标题字号。

AlertDescriptionProps

描述子组件的属性,继承原生 div 元素的所有属性。

字段类型说明
classNameClassValue自定义 class。
size'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl'尺寸,影响描述字号。

AlertWrapperProps

内容包裹区子组件的属性,继承原生 div 元素的所有属性。

字段类型说明
classNameClassValue自定义 class。
size'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl'尺寸,影响内容区间距。

ClassValue

CSS 类名类型

string | null | undefined | Record<string, boolean> | ClassValue[]

On this page