Skip to content

Popover 气泡卡片

展示比 Tooltip 更丰富的承载内容,常用于展示详细信息、表单提交或用户引导。

基础用法

通过 titlecontent 快速配置标准卡片。

基础用法

弹出位置

支持 12 个方向的弹出定位。

弹出位置

功能对齐 (Popconfirm)

Popover 支持像 Popconfirm 一样配置结构化的内容,包括图标、标题和描述。

功能对齐示例

触发方式

支持 hoverclickfocuscontextmenu 多种触发方式。支持触发方式的组合,如 ['hover', 'click']

触发方式

高级插槽内容

支持 headercontentfootericon 插槽,可实现极富表现力的复杂 UI。

高级插槽内容

受控显隐

通过 v-model:visible 实现手动组件状态同步。

手动控制

在 Nuxt 中使用

Popover 组件完全支持 Nuxt 3/4 的 SSR 渲染。在 Nuxt 项目中使用时,组件会自动导入,无需手动注册。

Nuxt 中使用

SSR 注意事项

  • ✅ 完美支持服务端渲染 (SSR),无水合错误
  • ✅ 自动感知全局暗黑模式
  • ✅ 支持所有的 Props 和 插槽
  • ✅ 浮层容器自动 Teleport 至 body 确保层级正确

SSR 透明度

Popover 组件使用了 Backdrop-filter 亚克力效果,在 SSR 环境下会自动降级为纯色直到客户端激活,确保极致的载入性能。

API

Props

属性说明类型默认值
title标题stringundefined
description描述文案,和 Popconfirm 对齐stringundefined
icon图标名称,和 Popconfirm 对齐stringundefined
icon-color图标颜色stringundefined
content内容文案stringundefined
placement浮层位置Placement'bottom'
trigger触发方式PopoverTrigger | PopoverTrigger[]'click'
visible受控显隐状态boolean | nullnull
effect主题风格'light' | 'dark' | string'light'
disabled是否禁用booleanfalse
show-arrow是否显示箭头booleantrue
show-after显示延迟,单位毫秒number0
hide-after隐藏延迟,单位毫秒number100
offset浮层偏移量[number, number][0, 12]
width浮层宽度string | number'auto'
max-height最大高度string | number'none'
scrollable内容是否可滚动booleanfalse
interactive鼠标移入浮层后是否保持显示booleantrue
match-trigger-width是否跟随触发器宽度booleanfalse
z-index浮层层级number2003
teleported是否挂载到 bodybooleantrue
popper-class自定义浮层类名string''
popper-style自定义浮层样式StyleValue{}
transition过渡动画名称string'yh-popover-fade'
persistent隐藏时是否保留 DOMbooleantrue
theme-overrides组件级主题变量覆盖ComponentThemeVarsundefined

Events

事件名称说明回调参数
update:visible可见性状态改变时触发(visible: boolean)
show显示时触发-
hide隐藏时触发-

Slots

插槽名说明
default触发元素
header自定义头部/标题内容
content自定义主体内容
icon自定义图标区域
footer自定义底部操作区

Expose

名称说明类型
toggle手动切换显隐状态(val: boolean) => boolean
visible当前是否可见Ref<boolean>

主题变量 (CSS Variables)

组件支持 themeOverrides,但源码没有定义专属的组件级 CSS 变量表,外观主要由共享浮层主题令牌构成。


提示: Popover 深度集成底层 Tooltip 引擎,支持 12 个方向弹出,并自然适配 Nuxt SSR 场景。

类型导出

名称说明
YhPopoverProps组件 Props 类型
YhPopoverEmits组件事件类型
YhPopoverSlots组件插槽类型
YhPopoverExpose组件 expose 类型
YhPopoverTrigger触发方式联合类型
YhPopoverInstance组件实例类型

Released under the MIT License.