Skip to main content

Popover

气泡卡片

基础使用​

function App() {
const UIPopover = (props) => {
return (
<Popover
type={'normal'}
trigger={props.trigger}
placement="top-end"
anchor={
<Button type="primary">{props.text}</Button>
}
>
显示完整文案
</Popover>
)
}
return (
<div className="ykui-demo-row">
{UIPopover({trigger: 'click', text: 'click 激活'})}
{UIPopover({trigger: 'hover', text: 'hover 激活'})}

<Popover
type={'normal'}
trigger="focus"
placement="top-end"
anchor={
<Button type="primary">focus 激活</Button>
}
>
显示完整文案
</Popover>
</div>
);
}

显示位置​

function App() {
const UIPopover = (props) => {
return (
<Popover
type={'normal'}
trigger={'click'}
placement={props.placement}
anchor={
<Button type="primary">{props.text}</Button>
}
>
显示完整文案
</Popover>
)
}
return (
<div className="ykui-demo-row">
<Popover
type={'normal'}
trigger="click"
placement="top"
anchor={
<Button type="primary">top</Button>
}
>
显示完整文案
</Popover>

{UIPopover({placement: 'top-end', text: 'top-end'})}
{UIPopover({placement: 'top-start', text: 'top-start'})}
{UIPopover({placement: 'bottom-end', text: 'bottom-end'})}
{UIPopover({placement: 'bottom', text: 'bottom'})}
{UIPopover({placement: 'bottom-start', text: 'bottom-start'})}

</div>
);
}

Popover API​

属性说明类型默认值
children显示内容ReactNode--
placement显示的位置bottomLeft〡bottom〡bottomRight〡topLeft〡top〡topRight〡left〡leftTop〡leftBottom〡righttop
trigger触发方式hover〡click〡focus--
anchor触发的元素ReactNode--
autoAdjust弹窗被遮挡时是否自动调整方向none〡forward〡oblique〡all--
placementClass悬浮显示框类名string--
contentClass悬浮显示段落类名string--
container指定挂载的domanybody
visible是否显示boolean--
operationButtons排除click outside的按钮array--
onVisibleChange显示或者隐藏时调用Function--
mouseEnterDelay显示弹窗延迟number--
mouseLeaveDelay关闭弹窗延迟number--
injectPositionStyle是否为overlay注入位置样式boolean--
autoFixedScroll自动监听滚动条滚动booleantrue
style自定义styleobject--
closeOnEscape按下Escape关闭booleanfalse
closeOnClickOutside鼠标点击其他地方关闭booleanfalse

autoAdjust API​

值说明
forward正向调整 如向正上弹出 但顶部超出 自动调整为向正下弹出
oblique斜向调整 如向上弹出 当左侧超出时 自动调整为朝上左方向
all包含上述两种都调整