QDialog 元件是提供使用者選擇特定動作或動作列表的好方法。它們還可以向使用者提供重要資訊,或要求他們做出決定(或多個決定)。
從 UI 的角度來看,您可以將對話框視為一種浮動式模組,它僅覆蓋螢幕的一部分。這表示對話框應僅用於快速使用者動作,例如驗證密碼、取得簡短的應用程式通知或快速選擇一個或多個選項。
提示
對話框也可以作為全域可用的方法,用於更基本的使用案例,例如原生 JS alert()、prompt() 等。對於後者的行為,請前往「對話框插件」頁面。
大師級提示
與其在 .vue 範本中塞滿 QDialog,最好為您的對話框編寫一個元件,並使用「對話框插件」從應用程式中的任何位置調用它。
用法
注意
最好讓您的 QDialog 主要內容是 QCard。但是,如果您計劃使用任何其他元件(例如 QForm)或標籤,請確保 QDialog 的直接子項以 <div>
標籤呈現(或自行將其包裝在其中)。
基本
樣式設定
定位
提示
不要將「position」屬性與顯示/隱藏動畫混淆。如果您想要自訂動畫,則應使用 transition-show
和 transition-hide
,無論「position」或「maximized」為何,都可以應用它們。
各種內容
對話框可以包含任何內容。一些範例
提示
如果您要使用容器化的 QLayout,則需要為 QDialog 設定寬度(如果使用左右位置),或高度(如果使用頂部/底部位置)。您可以使用 vw 和 vh 單位。
處理滾動
不同模式
使用者無法透過按下 ESCAPE 鍵或點擊/輕觸其背景來關閉對話框。
對話框也可以是頁面的一部分,而無需立即聚焦。這就是「無縫」模式發揮作用的地方
對話框中的對話框
您能夠在其他對話框之上開啟對話框,深度層級數量無限。
尺寸設定
您能夠自訂對話框的大小。請注意,我們要嘛修改內容的樣式,要嘛使用 full-width
或 full-height
屬性
Cordova/Capacitor 返回按鈕
Quasar 預設為您處理返回按鈕,因此它可以隱藏任何已開啟的對話框,而不是返回上一頁的預設行為(這不是一個好的使用者體驗)。
但是,如果您希望停用此行為,請編輯您的 /quasar.config
檔案
// quasar.config file
return {
framework: {
config: {
capacitor: {
// Quasar handles app exit on mobile phone back button.
backButtonExit: true/false/'*'/['/login', '/home', '/my-page'],
// On the other hand, the following completely
// disables Quasar's back button management.
backButton: true/false
}
}
}
}