Popover气泡卡片
使用import{ Popover }from"antd"; |
当目标元素有进一步的描述和相关操作时,可以收纳到卡片中,根据用户的操作行为进行展现。
和 Tooltip
的区别是,用户可以对浮层上的元素进行操作,因此它可以承载更复杂的内容,比如链接或按钮等。
Content
Content
Content
Content
Content
Content
Content
Content
Content
Content
Content
Content
通用属性参考:通用属性
参数 | 说明 | 类型 | 默认值 | 版本 |
---|---|---|---|---|
content | 卡片内容 | ReactNode | () => ReactNode | - | |
title | 卡片标题 | ReactNode | () => ReactNode | - |
参数 | 说明 | 类型 | 默认值 | 版本 |
---|---|---|---|---|
align | 该值将合并到 placement 的配置中,设置参考 dom-align | object | - | |
arrow | 修改箭头的显示状态以及修改箭头是否指向目标元素中心 | boolean | { pointAtCenter: boolean } | true | 5.2.0 |
autoAdjustOverflow | 气泡被遮挡时自动调整位置 | boolean | true | |
color | 背景颜色 | string | - | 4.3.0 |
defaultOpen | 默认是否显隐 | boolean | false | 4.23.0 |
destroyTooltipOnHide | 关闭后是否销毁 Tooltip | boolean | false | |
fresh | 默认情况下,Tooltip 在关闭时会缓存内容。设置该属性后会始终保持更新 | boolean | false | 5.10.0 |
getPopupContainer | 浮层渲染父节点,默认渲染到 body 上 | (triggerNode: HTMLElement) => HTMLElement | () => document.body | |
mouseEnterDelay | 鼠标移入后延时多少才显示 Tooltip,单位:秒 | number | 0.1 | |
mouseLeaveDelay | 鼠标移出后延时多少才隐藏 Tooltip,单位:秒 | number | 0.1 | |
overlayClassName | 卡片类名 | string | - | |
overlayStyle | 卡片样式 | React.CSSProperties | - | |
overlayInnerStyle | 卡片内容区域的样式对象 | React.CSSProperties | - | |
placement | 气泡框位置,可选 top left right bottom topLeft topRight bottomLeft bottomRight leftTop leftBottom rightTop rightBottom | string | top | |
trigger | 触发行为,可选 hover | focus | click | contextMenu ,可使用数组设置多个触发行为 | string | string[] | hover | |
open | 用于手动控制浮层显隐,小于 4.23.0 使用 visible (为什么?) | boolean | false | 4.23.0 |
zIndex | 设置 Tooltip 的 z-index | number | - | |
onOpenChange | 显示隐藏的回调 | (open: boolean) => void | - | 4.23.0 |
请确保 Popover
的子元素能接受 onMouseEnter
、onMouseLeave
、onFocus
、onClick
事件。
Token 名称 | 描述 | 类型 | 默认值 |
---|---|---|---|
titleMinWidth | 气泡卡片标题最小宽度 | string | number | 177 |
zIndexPopup | 气泡卡片 z-index | number | 1030 |
findDOMNode is deprecated
这个警告?这是由于 rc-trigger
的实现方式导致的,rc-trigger
强制要求 children 能够接受 ref,否则就会 fallback 到 findDOMNode,所以 children 需要是原生 html 标签,如果不是,则需要使用 React.forwardRef
把 ref
透传到原生 html 标签。
findDOMNode is deprecated
重现:https://codesandbox.io/p/sandbox/finddomnode-c5hy96forwardRef
消除警告:https://codesandbox.io/p/sandbox/no-finddomnode-warning-forked-gdxczs请确保 Popover
的子元素能接受 onMouseEnter
、onMouseLeave
、onPointerEnter
、onPointerLeave
、onFocus
、onClick
事件。
更多问题,请参考 Tooltip FAQ。