Element用法---Loading 加載

僅供參考

文章目錄

  • 一、加載動畫
  • 二、Loading 組件
    • 1、指令調用 Loading
    • 2、服務調用 Loading


一、加載動畫

當我們打開某個頁面時,如果需要加載的數據很多或者網絡很差,頁面加載就會非常緩慢,中間可能會很長時間顯示空白,那么就需要加載動畫進行一個過渡,既可以起到一個提示的作用,也可以增加用戶體驗

在這里插入圖片描述


二、Loading 組件

Element 的 Loading 組件可以很好的實現一個動態加載動畫

Element Plus 提供了兩種調用 Loading 的方法:指令服務

1、指令調用 Loading

假如現在有一個表格需要渲染,但是表格加載數據需要時間,需要在加載數據的時候,只在表格內顯示加載動畫,而不是整個界面顯示加載,此時使用指令調用 Loading 更為方便

指令名稱: v-loading

<template><div class="table-container"><el-table v-loading="loading":data="tableData" style="width: 100%"><el-table-column prop="date" label="Date" width="180" /><el-table-column prop="name" label="Name" width="180" /><el-table-column prop="address" label="Address" /></el-table></div>
</template><script lang="ts" setup>
import { ref } from 'vue'const loading = ref(true)const tableData = ref([{date: '2016-05-02',name: 'John Smith',address: 'No.1518,  Jinshajiang Road, Putuo District',},{date: '2016-05-04',name: 'John Smith',address: 'No.1518,  Jinshajiang Road, Putuo District',},{date: '2016-05-01',name: 'John Smith',address: 'No.1518,  Jinshajiang Road, Putuo District',},
]) // 你的數據
</script>//當確保表格數據加載完成后,將 loading 的值改為 false 即可取消加載動畫

實現的效果如下:
在這里插入圖片描述
所以,你想要在哪個盒子里面添加加載動畫,就給哪個盒子添加 v-loading 指令

加載的同時顯示文案:element-loading-text

<template><div class="table-container"><el-table v-loading="loading"element-loading-text="拼命加載中":data="tableData" style="width: 100%"><el-table-column prop="date" label="Date" width="180" /><el-table-column prop="name" label="Name" width="180" /><el-table-column prop="address" label="Address" /></el-table></div>
</template>

在這里插入圖片描述

自定義加載圖標:element-loading-spinner

<template><div class="table-container"><el-table v-loading="loading"element-loading-text="拼命加載中":element-loading-spinner="svg":data="tableData" style="width: 100%"><el-table-column prop="date" label="Date" width="180" /><el-table-column prop="name" label="Name" width="180" /><el-table-column prop="address" label="Address" /></el-table></div>
</template><script lang="ts" setup>
import { ref } from 'vue'const loading = ref(true)const svg = `<path class="path" d="M 30 15L 28 17M 25.61 25.61A 15 15, 0, 0, 1, 15 30A 15 15, 0, 1, 1, 27.99 7.5L 15 15" style="stroke-width: 4px; fill: rgba(0, 0, 0, 0)"/>`

在這里插入圖片描述

自定義遮罩層顏色:element-loading-background

<template><div class="table-container"><el-table v-loading="loading"element-loading-text="拼命加載中"element-loading-background="black":data="tableData" style="width: 100%"><el-table-column prop="date" label="Date" width="180" /><el-table-column prop="name" label="Name" width="180" /><el-table-column prop="address" label="Address" /></el-table></div>
</template>

在這里插入圖片描述

自定義類名:element-loading-custom-class

/* 自定義的樣式會作用于加載遮罩層 */
.my-custom-loading {background-color: rgba(0, 0, 0, 0.5); /* 修改遮罩背景色 */
}/* 自定義加載動畫 */
.my-custom-loading .el-loading-spinner {/* 修改spinner容器樣式 */
}.my-custom-loading .el-loading-spinner .circular {/* 修改旋轉動畫樣式 */
}.my-custom-loading .el-loading-text {/* 修改加載文字樣式 */color: #ff0000;
}

2、服務調用 Loading

服務調用 Loading 更偏向于全屏顯示加載動畫

import { ElLoading } from 'element-plus'
const loading = ElLoading.service({text: '拼命加載中'
})
setTimeout(() => {loading.close() // 關閉加載
}, 2000)

在這里插入圖片描述

通過修改 service 中的字段也可以實現自定義加載效果:

const loading = ElLoading.service({target: '',   //Loading 需要覆蓋的 DOM 節點,默認是 bodylock: true, //是否在加載期間鎖定屏幕交互,如滾動屏幕等fullscreen: true,   //是否全屏顯示text: '拼命加載中',  //加載圖標下方的加載文案background: 'black',  //遮罩背景色customClass: '',      // Loading 的自定義類名beforeClose: ()=>true,   //Loading 關閉之前執行的函數,返回值為布爾型closed: ()=>{}         //Loading 完全關閉后觸發的函數
})

使用服務調用 Loading 怎么實現在某個div 中顯示加載動畫,而不是全屏顯示

<div class="table-container"><div ref="divBox"></div>
</div>import { ref } from 'vue'
const divBox = ref()
const loading = ElLoading.service({target: divBox.value?.$el,   //Loading 需要覆蓋的 DOM 節點fullscreen: false,   //是否全屏顯示text: '拼命加載中',  //加載圖標下方的加載文案
})<style>
.table-container {position: relative; /* 關鍵樣式 */height: 100%; /* 確保容器有高度 */
}
</style>

關鍵點:
(1)target 字段設置為要添加動態加載效果的 DOM元素
(2)fullscreen 設置為 false 關閉全屏顯示
(3)要添加加載動畫的 DOM 元素的父容器必須有高度且設置了相對定位(relative)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/93307.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/93307.shtml
英文地址,請注明出處:http://en.pswp.cn/web/93307.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

飛算AI 3.2.0實戰評測:10分鐘搭建企業級RBAC權限系統

飛算AI 3.2.0實戰評測&#xff1a;10分鐘搭建企業級RBAC權限系統 &#x1f31f; Hello&#xff0c;我是摘星&#xff01; &#x1f308; 在彩虹般絢爛的技術棧中&#xff0c;我是那個永不停歇的色彩收集者。 &#x1f98b; 每一個優化都是我培育的花朵&#xff0c;每一個特性都…

事務的四大特性

事務&#xff08;Transaction&#xff09;是數據庫管理系統&#xff08;DBMS&#xff09;中用于保證數據操作正確性和一致性的核心機制。事務的特性通常用 ACID 四個字母概括&#xff0c;分別代表 原子性&#xff08;Atomicity&#xff09;、一致性&#xff08;Consistency&…

WIN11系統下Open3D 0.19.0支持GPU的python版本

前往Open 3D官網下載https://github.com/isl-org/Open3D下載對應版本的源碼。 根據官方手冊利用cmake進行編譯&安裝&#xff0c;其中需要修改一些代碼適應于win 11系統&#xff0c;編譯時間較長需要耐心等待。最后&#xff0c;安裝結果如下圖&#xff0c;搞了四天&#xff…

ICCV 2025 | 4相機干掉480機位?CMU MonoFusion高斯潑濺重構4D人體!

???? 近日&#xff0c;卡內基梅隆大學&#xff08;Carnegie Mellon University&#xff09;的研究團隊在動態場景重建領域取得重要進展。其發表于ICCV 2025的論文《MonoFusion: Sparse-View 4D Reconstruction via Monocular Fusion》提出創新方法MonoFusion 。該方法突破常…

ADB 無線調試連接(Windows + WSL 環境)

gradle wrapper --gradle-version 8.4 Windows WSL 成功連接 Android 設備&#xff08;用于 ./gradlew installDebug&#xff09;的完整過程總結&#xff1a;? ADB 無線調試連接過程&#xff08;Windows WSL 環境&#xff09; &#x1f4cc; 目標&#xff1a;從 WSL 中通過 …

【.net core】【wetercloud】處理前端項目免登陸,且從前端項目跳轉至系統內時的問題

1.前端項目訪問后臺內容時免登陸&#xff08;一般用于后臺接口需要校驗登陸時&#xff09;處理思路&#xff1a;將后臺用戶的登陸校驗令牌信息在用戶登錄后添加至前端項目訪問地址的參數列表中&#xff0c;如&#xff1a;https://yourdomain/Home/Index#/https://yourdomain/vi…

設備 AI 知識庫,管理效率新飛躍

在設備管理領域&#xff0c;高效解決設備故障、合理規劃維護工作對企業生產運營至關重要。易點易動設備管理系統新推出的設備 AI 知識庫&#xff0c;為提升管理效率帶來了新契機。設備 AI 知識庫集成先進的人工智能技術&#xff0c;是設備管理領域的創新應用。易點易動設備管理…

C#繪制斐波那契螺旋

Fabonacci 數列&#xff0c;也就是”兔子數列“&#xff0c; 如果第一項為0的話&#xff0c;就是&#xff0c; 0&#xff0c;1&#xff0c;1&#xff0c;2&#xff0c;3&#xff0c;5&#xff0c;8&#xff0c;13&#xff0c;21&#xff0c;34&#xff0c;55&#xff0c;89……

JavaScript 任務 - clearTimeout 函數與 clearInterval 函數

clearTimeout 函數 1、基本介紹 clearTimeout 函數用于取消先前通過 setTimeout 函數設置的定時器 clearTimeout(【timeoutID】)參數說明timeoutID要取消的定時器的標識符&#xff0c;這個 ID 是由 setTimeout 函數返回的2、演示 let timeoutId1 setTimeout(() > {console.…

在 CentOS 7 中使用 systemd 創建自定義服務

systemd 創建自定義服務簡述創建自定義服務步驟文件覆蓋優先級創建服務流程在 /etc/systemd/system/ 目錄下創建 .service 文件&#xff08;需 root 權限&#xff09;&#xff1a;編寫服務配置模板Systemd 服務文件三大區塊詳解[Unit] 區塊 - 服務元數據與依賴[Service] 區塊 -…

【QT】printsupport庫遠程實現打印機打印

【QT】printsupport庫遠程實現打印機打印 前言 思路 實現 當前所有可用打印機瀏覽 打印預覽 打印輸出 手動選擇打印 自動打印 防呆補充 庫打包 前言 在打印機的通訊控制方式中,有USB、網口、串口、WIFI等,針對局域網環境下,用自研軟件控制打印機打印的應用場景,針對自研軟…

LT3045EDD#TRPBF ADI亞德諾 超低噪聲LDO穩壓器 電子元器件IC

LT3045EDD#TRPBF ADI 超低噪聲LDO穩壓器專業解析1. 產品技術檔案LT3045EDD#TRPBF是ADI&#xff08;Analog Devices Inc.&#xff09;推出的超低噪聲/超高PSRR線性穩壓器&#xff0c;采用DFN-12 (3x3mm)封裝&#xff0c;以其0.8μVRMS超低噪聲和79dB超高頻PSRR成為精密電源設計。…

易語言模擬真人鼠標軌跡算法 - 非貝塞爾曲線

一.簡介 鼠標軌跡算法是一種模擬人類鼠標操作的程序&#xff0c;它能夠模擬出自然而真實的鼠標移動路徑。 鼠標軌跡算法的底層實現采用C/C語言&#xff0c;原因在于C/C提供了高性能的執行能力和直接訪問操作系統底層資源的能力。 鼠標軌跡算法具有以下優勢&#xff1a; 模擬人…

Spring Boot 3 數據源連接信息存儲方法

在Spring Boot 3中&#xff0c;數據源連接信息的存儲方式主要有以下幾種&#xff0c;根據安全性和環境需求選擇合適的方式&#xff1a; 1. 配置文件&#xff08;推薦基礎方式&#xff09; 位置&#xff1a;src/main/resources/application.properties 或 application.yml 示例…

按鍵序列常用示例

按鍵序列常用示例 按鍵編碼 基礎按鍵對應編碼 A-Z 原字符即可 KeyCodeSHIFTCTRL^ALT% 其他按鍵 KeyCodeBACKSPACE{BACKSPACE}, {BS}, or {BKSP}BREAK{BREAK}CAPS LOCK{CAPSLOCK}DEL or DELETE{DELETE} or {DEL}DOWN ARROW{DOWN}END{END}ENTER{ENTER} or ~ESC{ESC}HELP{HEL…

【LeetCode Solutions】LeetCode 熱題 100 題解(36 ~ 40)

CONTENTS二叉樹 - LeetCode 94. 二叉樹的中序遍歷&#xff08;簡單&#xff09;二叉樹 - LeetCode 104. 二叉樹的最大深度&#xff08;簡單&#xff09;二叉樹 - LeetCode 226. 翻轉二叉樹&#xff08;簡單&#xff09;二叉樹 - LeetCode 101. 對稱二叉樹&#xff08;簡單&…

數據處理分析環境搭建+Numpy使用教程

環境搭建 數據分析常用開源庫 Numpy NumPy(Numerical Python) 是 Python 語言的一個擴展程序庫。是一個運行速度非常快的數學庫&#xff0c;主要用于數組計算包含&#xff1a; 一個強大的N維數組對象 ndarray廣播功能函數整合 C/C/Fortran 代碼的工具線性代數、傅里葉變換、隨機…

實戰多屏Wallpaper壁紙顯示及出現黑屏問題bug分析-學員作業

背景&#xff1a; 在大家看了上一篇google官方對于多屏壁紙這塊的介紹后 安卓Wallpaper壁紙部分對多屏的支持-Google官方文檔介紹 可能還是對于壁紙支持多屏這塊沒有相關的實戰性的認知&#xff0c;所以本文就開始帶大家來進行部分解讀和實戰。 壁紙多屏顯示原理文檔解讀&a…

Vue插槽---slot詳解

1、什么是 Vue 插槽&#xff1f;Vue 插槽&#xff08;Slot&#xff09;?? 是 Vue 提供的一種非常強大且靈活的機制&#xff0c;用于實現&#xff1a;父組件向子組件傳遞一段模板內容&#xff08;HTML / 組件等&#xff09;&#xff0c;讓子組件在指定位置動態渲染這些內容。可…

STM32 - Embedded IDE - GCC - 顯著減少固件的體積

導言如上圖所示&#xff0c;在編譯器附加選項&#xff08;全局&#xff09;里添加--specsnano.specs&#xff0c;告訴編譯器使用newlib-nano替代newlib去編譯代碼。 newlib vs. newlib-nano newlib 是 GNU ARM 工具鏈默認的 C 標準庫&#xff0c;功能完整&#xff0c;但體積較大…