跳到主要內容
+

Popper

Popper 元件讓您建立提示框和彈出視窗,以顯示頁面上元素的相關資訊。

簡介

Popper 是一個用於建立各種彈出視窗的實用元件。它依賴第三方函式庫 (Popper.js v2) 進行定位。

元件

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

預設情況下,當 Popper 的 open 屬性設定為 true 時,Popper 會掛載到 DOM,而當 openfalse 時,則會從 DOM 中移除。

anchorEl 作為參考物件傳遞,以建立新的 Popper.js 實例。子元件會放置在 Portal 中,並預先添加到文件主體中,以避免渲染問題。您可以使用 disablePortal 屬性停用此行為。

以下示範展示如何建立和設定基本 Popper 的樣式。點擊切換 Popper 以查看其行為

按下 Enter 鍵開始編輯

自訂

放置位置

Popper 的預設放置位置為 bottom。您可以使用 placement 屬性變更它。嘗試在下面的互動式示範中將此值變更為 top,以查看其運作方式

放置位置值
錨點

轉場效果

您可以使用渲染屬性子元件和轉場元件,為 Popper 的開啟和關閉狀態製作動畫,只要該元件符合以下條件

  • 是 Popper 的直接子系後代
  • 在開始進入轉場時呼叫 onEnter 回呼屬性
  • 在結束轉場完成時呼叫 onExited 回呼屬性

這兩個回呼允許 Popper 在關閉和完全轉場時卸載子元件內容。