此指令是在處理 QDialog 和 QMenu 組件時的輔助工具。當附加到 DOM 元素或組件時,該組件將在點擊/點擊時關閉 QDialog 或 QMenu(以先出現的父層為準)。
用法
基本
關閉多個層級
您還可以透過為指令提供層級編號來關閉多個層級的彈出視窗
<... v-close-popup="3">
content_paste
- 如果值為 0 或布林值
false
,則指令已停用 - 如果值為 < 0,則會關閉鏈中的所有彈出視窗
- 如果值為 1 或布林值
true
或未定義,則只會關閉父層彈出視窗 - 如果值為 > 1,則會關閉鏈中指定數量的父層彈出視窗(請注意,鏈式 QMenu 僅被視為 1 個彈出視窗,而 QPopupProxy 會分隔鏈式選單)
請注意,以下鏈式 QMenu(一個直接放在另一個之下)不需要您指定多個層級。當 v-close-popup
用於鏈式 QMenu 時,它會將所有直接鏈式的 QMenu 視為僅一個層級。
在以下範例中,選單使用 2 個層級,這表示它也會關閉對話框,因為對話框是其父層
請注意,以下內部對話框是主要對話框的子層。這是 v-close-popup
能夠在使用多個層級時關閉兩個對話框的唯一方法。否則,如果對話框是同層級(或任何其他類似情境,其中一個對話框不是另一個對話框的子層),您將必須在對話框上使用 v-models 並自行處理兩個對話框的關閉。