Skip to content
通用组件

消息Message

界面 / 系统反馈的提示条:左色条 + 淡底,可关闭、可做横幅。编辑写在正文里的提示用 Cbox。

Vue
实验import { AkMessage } from "@mooncellwiki/prts-design-vue"Storybook ↗源码 ↗

界面 / 系统给读者的反馈:「数据来自哪个版本」「已同步」「本页含未实装内容」「删除不可撤销」。左侧 4px 等级色条 + 等级色淡底,标题行用等级色;与 轻提示 Toast 同族(Toast 是会自己消失的浮层版)。

与 正文提示框 Cbox 的分工:Cbox 是编辑写在正文里的内容(= 现网 Template:Cbox2);Message 是界面说的话——横幅、可关闭、操作结果。

变体 ​

写法同 Naive UI 的 n-alert:variant 定等级色(info 默认 · success · warning · danger · neutral · accent),title 是加粗的标题行,图标按等级自动选,icon 可换、show-icon 可关。危险提示可叠 stripes 斜纹。

可关闭 ​

closable 在右侧放一枚 ✕:点了触发 close 并隐藏自己。不绑定 v-model 时关了就没了;绑定了可以再打开。标题要带链接时用 #header 插槽。

横幅 ​

banner:顶边 3px 色条、文字居中,给站点公告 / 页顶通知;危险横幅配 stripes。

可访问性 ​

  • warning / danger 输出 role="alert",其余 role="status":动态插入(提交后出现的结果)时读屏会念,前者立即、后者礼貌播报。页面一加载就在的提示不会被重复念。
  • 图标是装饰(aria-hidden),等级靠文字表达——不要只写一个图标或只靠颜色区分「成功 / 失败」。
  • 关闭按钮读屏名「关闭」,有焦点环(message.css 补回了被 all: unset 清掉的 :focus-visible 描边)。

Vue API ​

属性类型默认说明
variant"info""success""warning""accent""danger""neutral""info"外观(等级色):info 蓝(默认)· success 绿 · warning 黄 · danger 红 · neutral 灰 · accent 主色
titlestring—加粗的标题行(等级色);要带链接 / 格式时用 #header 插槽
iconIconName—图标;默认按 variant:success → check,warning / danger → warn,其余 → info
showIconbooleantrue显示图标(同 Naive 的 show-icon)
closablebooleanfalse右侧 ✕ 关闭按钮:点了隐藏自己(v-model 变 false)并触发 close
bannerbooleanfalse横幅:顶边 3px 色条、文字居中——站点公告 / 页顶通知
stripesbooleanfalse叠斜纹(危险横幅,配 variant="danger")
modelValuebooleantrue是否显示;不绑定时自己管(关掉就没了),绑定了可以再打开
事件参数说明
update:modelValue[value: boolean]
close[]点了关闭按钮(之后自己隐藏)
插槽说明
default正文
header标题行(代替 title)
icon图标(代替 icon;放进 20px 的图标位,颜色跟等级色)

CSS 实现 ​

模板 / Lua 输出 div.ak-message(.ak-message--success …) > svg.ak-message__icon + div.ak-message__body(里面可有 div.ak-message__title)+ 可选 button.ak-message__close。

块元素 __修饰 --

文本 CC BY-NC-SA 4.0 · 游戏素材版权归鹰角网络所有