為何捐款
API 瀏覽器
Close Popup Directive

此指令是在處理 QDialogQMenu 組件時的輔助工具。當附加到 DOM 元素或組件時,該組件將在點擊/點擊時關閉 QDialog 或 QMenu(以先出現的父層為準)。

Loading ClosePopup API...

用法

基本

搭配 QMenu



搭配 QDialog



關閉多個層級

您還可以透過為指令提供層級編號來關閉多個層級的彈出視窗

<... v-close-popup="3">
  • 如果值為 0 或布林值 false,則指令已停用
  • 如果值為 < 0,則會關閉鏈中的所有彈出視窗
  • 如果值為 1 或布林值 true 或未定義,則只會關閉父層彈出視窗
  • 如果值為 > 1,則會關閉鏈中指定數量的父層彈出視窗(請注意,鏈式 QMenu 僅被視為 1 個彈出視窗,而 QPopupProxy 會分隔鏈式選單)

請注意,以下鏈式 QMenu(一個直接放在另一個之下)不需要您指定多個層級。當 v-close-popup 用於鏈式 QMenu 時,它會將所有直接鏈式的 QMenu 視為僅一個層級。

選單樹狀結構



在以下範例中,選單使用 2 個層級,這表示它也會關閉對話框,因為對話框是其父層

搭配選單的對話框



請注意,以下內部對話框是主要對話框的子層。這是 v-close-popup 能夠在使用多個層級時關閉兩個對話框的唯一方法。否則,如果對話框是同層級(或任何其他類似情境,其中一個對話框不是另一個對話框的子層),您將必須在對話框上使用 v-models 並自行處理兩個對話框的關閉。

對話框中的對話框