Skip to content

Alert

Alert 用于展示页面内的重要提示、操作结果、风险提醒和可关闭反馈。它是内容型提示,不会自动浮出或定时关闭;需要全局浮层反馈时使用 ToastNotification

Basic

variant 决定颜色语义,titledescription 适合多数短提示。

常见场景

图标与操作

通过 showIcon 展示内置语义图标区域,action 放置重试、查看详情等操作。

可关闭提示

closable 会渲染关闭按钮;受控场景使用 openonOpenChange

Usage

tsx
import { Alert, Button } from "@ldkj/web-ui";

export function Example() {
  return (
    <Alert
      showIcon
      variant="warning"
      title="额度即将用尽"
      description="当前批次剩余额度不足 10%,建议及时补充。"
      action={<Button size="sm">查看明细</Button>}
    />
  );
}

API

属性说明类型默认值
variant提示类型"info" | "success" | "warning" | "error""info"
title标题内容React.ReactNode-
description描述内容;存在时优先于 children 展示React.ReactNode-
children自定义正文内容React.ReactNode-
showIcon是否展示图标区域booleanBoolean(icon)
icon自定义图标内容React.ReactNode-
action右下或正文后的操作区域React.ReactNode-
closable是否展示关闭按钮booleanfalse
open受控显示状态boolean-
onOpenChange显示状态变化回调(open: boolean) => void-
onClose点击关闭后的回调() => void-
className自定义类名string-
class类名别名string-

其余属性继承原生 div 属性。

行为规则 / 优先级

  • description 存在时会作为正文显示;否则显示 children
  • open 传入时组件由外部控制;未传入时关闭按钮会更新内部状态。
  • 点击关闭按钮会依次触发内部关闭、onOpenChange(false)onClose()
  • role 默认随类型变化:warningerroralert,其他类型为 status;可通过原生 role 覆盖。

Notes

  • Alert 适合保留在页面布局中,不适合替代确认弹窗。
  • action 中的按钮应保持简短,复杂操作建议链接到详情页或打开 Drawer。
  • 长文本提示建议使用 children 自定义段落结构。