这个指令在处理 QDialog 和 QMenu 组件时是一个助手。当它附加到 DOM 元素或组件时,该组件将在点击/轻触时关闭 QDialog 或 QMenu(以先出现的为准)。
用法
基本用法
关闭多个层级
您还可以通过向指令提供一个层级号来关闭多个层级的弹出窗口
<... v-close-popup="3">
content_paste
- 如果值为 0 或布尔值
false
则指令被禁用 - 如果值为 < 0 则它会关闭链中所有弹出窗口
- 如果值为 1 或布尔值
true
或未定义,则它只关闭父级弹出窗口 - 如果值为 > 1 则它会关闭链中指定数量的父级弹出窗口(注意,链式 QMenus 被视为一个弹出窗口,而 QPopupProxy 将链式菜单分开)
请注意,在下面的示例中,链式 QMenus(一个直接放在另一个下面)不需要您指定多个层级。当 v-close-popup
在链式 QMenu 中使用时,它将所有直接链式 QMenus 视为一个层级。
在下面的示例中,菜单使用 2 个层级,这意味着它也会关闭对话框,因为对话框是它的父级
请注意,下面的内部对话框是主对话框的子级。这是唯一一种使用多个层级时,v-close-popup
可以同时关闭两个对话框的方法。否则,如果对话框是兄弟节点(或任何其他类似的场景,其中一个对话框不是另一个的子级),您将不得不使用对话框上的 v-models 并自己处理两个对话框的关闭操作。