跳至主要內容
版本:v8

ion-loading

已設定範圍

一個可以用來指示活動的覆蓋層,同時會阻擋使用者互動。載入指示器會顯示在應用程式內容的上方,且可由應用程式關閉,以恢復使用者與應用程式的互動。它包含一個可選的背景,可以在建立時設定 `showBackdrop: false` 來停用。

基本用法

一旦呈現,載入指示器預設會無限期顯示。開發人員可以在建立後透過呼叫元件上的 `dismiss()` 方法手動關閉載入指示器。可以呼叫 `onDidDismiss` 函式,在載入指示器關閉後執行動作。

或者,開發人員可以透過將要顯示的毫秒數傳遞至載入選項的 `duration` 中,將載入指示器設定為在特定時間後自動關閉。

控制器

自訂

旋轉器

可以使用 `spinner` 屬性自訂所使用的旋轉器。如需完整選項清單,請參閱 旋轉器屬性文件

主題化

載入使用範圍封裝,這表示它會透過在執行階段將每個樣式附加額外的類別來自動設定其 CSS 的範圍。覆寫 CSS 中已設定範圍的選取器需要更高的特異性選取器。

我們建議傳遞自訂類別,並使用它將自訂樣式新增至主機和內部元素。

注意

`ion-loading` 會顯示在您應用程式的根目錄,因此我們建議將任何 `ion-loading` 樣式放在全域樣式表單中。

協助工具

Ionic 會自動將載入的 `role` 設定為 `dialog`

如果為載入定義了 `message` 屬性,則 `aria-labelledby` 屬性會自動設定為訊息元素的 ID。否則,不會設定 `aria-labelledby`,且開發人員必須使用 `htmlAttributes` 屬性提供 `aria-label`。

所有 ARIA 屬性都可以透過在載入的 `htmlAttributes` 屬性中定義自訂值來手動覆寫。

介面

LoadingOptions

interface LoadingOptions {
spinner?: SpinnerTypes | null;
message?: string | IonicSafeString;
cssClass?: string | string[];
showBackdrop?: boolean;
duration?: number;
translucent?: boolean;
animated?: boolean;
backdropDismiss?: boolean;
mode?: Mode;
keyboardClose?: boolean;
id?: string;
htmlAttributes?: { [key: string]: any };

enterAnimation?: AnimationBuilder;
leaveAnimation?: AnimationBuilder;
}

屬性

animated

描述如果為 `true`,則載入指示器會產生動畫效果。
屬性animated
類型布林值
預設值true

backdropDismiss

描述如果為 `true`,則當點擊背景時,載入指示器將會關閉。
屬性backdrop-dismiss
類型布林值
預設值false

cssClass

描述要套用以自訂 CSS 的其他類別。如果提供多個類別,則應以空格分隔。
屬性css-class
類型字串|字串[]|未定義
預設值未定義

duration

描述關閉載入指示器前要等待的毫秒數。
屬性duration
類型數字
預設值0

enterAnimation

描述呈現載入指示器時要使用的動畫。
屬性未定義
類型((baseEl: any, opts?: any) => Animation) | 未定義
預設值未定義

htmlAttributes

描述要傳遞至載入器的其他屬性。
屬性未定義
類型未定義|{ [key: string]: any; }
預設值未定義

isOpen

描述如果為 `true`,則載入指示器將會開啟。如果為 `false`,則載入指示器將會關閉。如果需要更精細地控制呈現,請使用此選項,否則請僅使用 loadingController 或 `trigger` 屬性。請注意:當載入指示器關閉時,`isOpen` 不會自動設定回 `false`。您需要在程式碼中執行此動作。
屬性is-open
類型布林值
預設值false

keyboardClose

描述如果為 `true`,則在呈現覆蓋層時會自動關閉鍵盤。
屬性keyboard-close
類型布林值
預設值true

leaveAnimation

描述關閉載入指示器時要使用的動畫。
屬性未定義
類型((baseEl: any, opts?: any) => Animation) | 未定義
預設值未定義

message

描述要在載入指示器中顯示的可選文字內容。

此屬性接受自訂 HTML 字串。預設會將內容剖析為純文字。必須先在 Ionic 設定中將 `innerHTMLTemplatesEnabled` 設定為 `true`,才能使用自訂 HTML。
屬性message
類型IonicSafeString|字串|未定義
預設值未定義

mode

描述模式決定要使用哪個平台樣式。
屬性mode
類型"ios"|"md"
預設值未定義

showBackdrop

描述如果為 `true`,則會在載入指示器後面顯示背景。
屬性show-backdrop
類型布林值
預設值true

spinner

描述要顯示的旋轉器名稱。
屬性spinner
類型"bubbles"|"circles"|"circular"|"crescent"|"dots"|"lines"|"lines-sharp"|"lines-sharp-small"|"lines-small"|null|未定義
預設值未定義

translucent

描述如果為 `true`,則載入指示器會是半透明的。僅當模式為 `“ios”` 且裝置支援 `backdrop-filter` 時套用。
屬性translucent
類型布林值
預設值false

trigger

描述對應於觸發元素 (當點擊時會導致載入指示器開啟) 的 ID。
屬性trigger
類型字串|未定義
預設值未定義

事件

名稱描述泡泡
didDismiss在載入指示器關閉後發出。是 ionLoadingDidDismiss 的縮寫。true
didPresent在載入指示器呈現後發出。是 ionLoadingWillDismiss 的縮寫。true
ionLoadingDidDismiss在載入已關閉後發出。true
ionLoadingDidPresent載入畫面呈現後觸發。true
ionLoadingWillDismiss載入畫面即將關閉前觸發。true
ionLoadingWillPresent載入畫面即將呈現前觸發。true
willDismiss載入指示器即將關閉前觸發。為 ionLoadingWillDismiss 的簡寫。true
willPresent載入指示器即將呈現前觸發。為 ionLoadingWillPresent 的簡寫。true

方法

dismiss

描述在載入覆蓋層呈現後將其關閉。
簽名dismiss(data?: any, role?: string) => Promise<boolean>

onDidDismiss

描述返回一個 Promise,該 Promise 會在載入畫面關閉時解析。
簽名onDidDismiss<T = any>() => Promise<OverlayEventDetail<T>>

onWillDismiss

描述返回一個 Promise,該 Promise 會在載入畫面即將關閉時解析。
簽名onWillDismiss<T = any>() => Promise<OverlayEventDetail<T>>

present

描述在載入覆蓋層建立後將其呈現。
簽名present() => Promise<void>

CSS 陰影部分

此元件沒有可用的 CSS 陰影部分。

CSS 自訂屬性

名稱描述
--backdrop-opacity背景幕的透明度
--background載入對話框的背景
--height載入對話框的高度
--max-height載入對話框的最大高度
--max-width載入對話框的最大寬度
--min-height載入對話框的最小高度
--min-width載入對話框的最小寬度
--spinner-color載入指示器的顏色
--width載入對話框的寬度

插槽

此元件沒有可用的插槽。