跳到主要内容
+

Popper

Popper 组件允许您创建工具提示和弹出框,以显示页面上元素的信息。

简介

Popper 是一个实用组件,用于创建各种弹出框。它依赖于第三方库 (Popper.js v2) 进行定位。

组件

import { Popper } from '@mui/base/Popper';

默认情况下,当 Popper 的 open 属性设置为 true 时,它会被挂载到 DOM 中,当 openfalse 时,它会从 DOM 中移除。

anchorEl 作为引用对象传递,以创建一个新的 Popper.js 实例。子元素放置在预先添加到文档 body 的 Portal 中,以避免渲染问题。您可以使用 disablePortal 属性禁用此行为。

以下演示展示了如何创建和样式化一个基本的 Popper。点击切换 Popper 以查看其行为

Enter 键开始编辑

自定义

放置

Popper 的默认放置位置是 bottom。您可以使用 placement 属性更改它。尝试在下面的交互式演示中将此值更改为 top,以查看其工作方式

放置值
锚点

过渡效果

您可以使用渲染属性子元素和过渡组件来动画化 Popper 的打开和关闭状态,只要该组件满足以下条件

  • 是 Popper 的直接子级后代
  • 在进入过渡开始时调用 onEnter 回调属性
  • 在退出过渡完成时调用 onExited 回调属性

这两个回调允许 Popper 在关闭并完全过渡时卸载子内容。