Skip to content

提示条

属性 ​

属性类型默认值说明
status'info' | 'success' | 'warning' | 'error'—必需。消息状态。
titlestring—必需。消息标题。
descriptionstring—标题下方的说明。
iconComponent—自定义装饰图标。
isDismissablebooleanfalse显示关闭按钮。关闭后组件自行隐藏。
dismissLabelstringDismiss {title}关闭按钮的无障碍名称。
container'card' | 'section'cardcard 使用圆角。section 使用直角。
elevation'none' | 'low' | 'med' | 'high'none整体阴影层级。
collapsiblebooleantrue默认插槽内容是否可折叠。
defaultIsOpenbooleanfalse未绑定 isOpen 时的初始展开状态。
v-model:isOpenboolean—由父组件控制展开状态。
expandLabelstringExpand details展开按钮的无障碍名称。
collapseLabelstringCollapse details收起按钮的无障碍名称。

插槽 ​

  • 默认插槽:标题区域下方的详情。
  • title:替换标题的视觉内容。仍需提供 title 属性。
  • description:替换说明文本。
  • icon:替换状态图标。图标仅作装饰。
  • end:标题区域末尾的操作按钮。

标题、说明和详情插槽可包含块级内容。

展开与收起 ​

  • 默认插槽有内容时,组件显示展开按钮。
  • 默认从收起状态开始。
  • defaultIsOpen 只设置初始状态。
  • v-model:isOpen 控制当前状态。
  • collapsible 为 false 时,详情始终显示。
  • 收起时,详情内容卸载。
  • 父组件收起详情时,若焦点在详情内,焦点返回展开按钮。
vue
<Banner v-model:is-open="open" status="info" title="Configuration changes">
  <p>Review the updated settings before continuing.</p>
</Banner>

关闭 ​

  • isDismissable 显示关闭按钮。
  • 点击关闭后,组件自行隐藏。
  • 组件触发 dismiss 事件。
  • 关闭时,组件尝试将焦点返回进入提示前的元素。
  • 需要再次显示时,重新挂载组件或改变 key。

事件与模板引用 ​

  • update:isOpen(value):请求更新展开状态。
  • dismiss():关闭提示。
  • element:根元素的 HTMLDivElement | null。关闭后为 null。

本地化 ​

中文界面可设置以下文本:

  • dismissLabel="关闭提示"。
  • expandLabel="展开详情"。
  • collapseLabel="收起详情"。

主题 ​

css
.my-banner {
  --astryx-banner-info-background: #ecfdf5;
  --astryx-banner-info-foreground: #065f46;
}
  • --astryx-banner-info-background:信息背景。
  • --astryx-banner-info-foreground:信息文字和图标。
  • --astryx-banner-success-background:成功背景。
  • --astryx-banner-success-foreground:成功文字和图标。
  • --astryx-banner-warning-background:警告背景。
  • --astryx-banner-warning-foreground:警告文字和图标。
  • --astryx-banner-error-background:错误背景。
  • --astryx-banner-error-foreground:错误文字和图标。
  • --astryx-banner-content-background:详情区域背景。
  • --astryx-banner-border:详情区域边框。
  • --astryx-radius-container:card 容器圆角。

Neutral 自动适配明暗模式。