vue 加載動態效果,自行封裝組件

背景:

在項目開發中,會請求接口,就會遇到加載中、加載成功、加載失敗、和加載成功但暫無數據等情況。就自行封裝了一個加載組件。采用vue3+element+setup組合式寫法。

實現效果:

?

封裝組件:

//封裝組件
<template><div class="loadding_contaniers" v-if="loadState == 1"><div class="loading_img"><img :src="loadingImg1" /></div><div class="imgTitle">加載中<span id="dot">...</span></div></div><div class="loadding_contaniers" v-else-if="loadState == 2"><div class="loading_img"><img :src="loadingImg2" /></div><div class="imgTitle">請求失敗,請重新加載!</div></div><div class="loadding_contaniers" v-else-if="loadState == 3"><div class="loading_img"><img :src="loadingImg3" /><!-- <img :src="props.noticeTip == '暫無數據' ? loadingImg3 : loadingImg2" /> --></div><div class="imgTitle">{{ noticeTip }}</div></div><div class="loadding_contaniers" v-else-if="loadState == 404"><div class="loading_img"><img :src="loadingImg3" class="img404" /><!-- <img :src="props.noticeTip == '暫無數據' ? loadingImg3 : loadingImg2" /> --></div><div class="imgTitle">{{ noticeTip }}</div></div><div class="loadding_sucess" v-else><slot> </slot></div>
</template><script setup>
import { getAssetsFile } from "@/utils";
import loadingImg1 from "@/assets/images/loadingImg/isLoading_bg.png";
import loadingImg2 from "@/assets/images/loadingImg/isErr_bg.png";
import loadingImg3 from "@/assets/images/loadingImg/isNone_bg.png";
const props = defineProps({// 1:加載中 2:加載失敗 3:暫無數據 4:加載成功loadState: Number,noticeTip: {type: String,default: "暫無數據",},
});
</script><style lang="scss" scoped>
.loadding_contaniers {width: 100%;height: 100%;display: flex;flex-direction: column;align-items: center;justify-content: center;.loading_img {> img {width: 150px;height: 150px;}.img404{width: 50px;height: 50px;}}.imgTitle {// flex: 1;// height: 0;color: #757575;#dot {display: inline-block;width: 1.5em;vertical-align: bottom;overflow: hidden;animation: dotting 0.5s infinite step-start;}@keyframes dotting {0% {width: 0;margin-right: 1.5em;}33% {width: 0.5em;margin-right: 1em;}66% {width: 1em;margin-right: 0.5em;}100% {width: 1.5em;margin-right: 0;}}}
}
.loadding_sucess {width: 100%;height: 100%;
}
</style>

使用示例:

備注:

涉及到的圖片如下:

?

?

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

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

相關文章

八目導航 version:1.2

八目導航 version&#xff1a;1.2 網址&#xff1a;https://crbssseooebc.sealoshzh.site/ 日志&#xff1a; 1.美化了頁面 2.新增并替換了部分網址 3.不會出現危險網址提示(指的是進入八目導航時) 4.為網址圖標增加了動效 5.采用Vue3框架重新實現了該導航 注意&#xff1a;該…

WebWorkers在項目中的使用案例

Worker | 文檔 worker 線程的關閉在主線程和 worker 線程都能進行操作&#xff0c;但對 worker 線程的影響略有不同。 // main.js&#xff08;主線程&#xff09; const myWorker new Worker(/worker.js); // 創建worker myWorker.terminate(); // 關閉worker 復制代碼 // wor…

掌握Linux項目自動化構建:從零入門make與Makefile

文章目錄 前言&#xff1a; 一、初識自動化構建工具1.1 什么是make/Makefile&#xff1f;1.2 快速體驗 二、深入理解核心機制2.1 依賴關系與依賴方法2.2 偽目標的妙用2.3 具體語法a.makefile的基本雛形b.makefile推導原則&#xff01; 三、更加具有通用型的makefile1. 變量定義…

深度分頁優化思路

深度分頁優化思路 思考以下問題 查詢以下SQL的流程是怎么樣的呢&#xff1f; 為什么只查詢10條數據需要7秒&#xff1f; # 查詢時間7秒 SELECT * FROM user ORDER BY age LIMIT 1000000, 10問題分析 為什么分頁查詢隨著翻頁的深入&#xff0c;會變得越來越慢。 其實&#xff0…

使用 Vite 提升前端開發體驗:入門與配置指南

在現代前端開發中&#xff0c;構建工具的選擇對開發效率和項目性能有著至關重要的影響。Vite 是一個新興的前端構建工具&#xff0c;由 Vue.js 的作者尤雨溪開發&#xff0c;旨在通過利用現代瀏覽器的原生 ES 模塊特性&#xff0c;提供更快的開發服務器啟動速度和更高效的熱更新…

MYSQL基本語法使用

目錄 一、mysql之DML 增加語句 刪除語句和truncate 更新語句 replace語句 select查詢語句 二、select多種用法 查詢時的別名使用 分組 分組后的篩選 結果排序 分頁功能 分表 多表關聯查詢 練習題 一、單表查詢 二、多表查詢 前面已經學習了mysql的安裝和基本語…

自動化測試selenium(Java版)

1.準備工作 1.1.下載瀏覽器 自動化測試首先我們要準備一個瀏覽器,我們這里使用谷歌(chrome)瀏覽器. 1.2.安裝驅動管理 每一個瀏覽器都是靠瀏覽器驅動程序來啟動,但是瀏覽器的版本更新非常快,可能我們今天測試的是一個版本,第二天發布了一個新的版本,那么我們就要重構代碼,很…

HarmonyOS Next應用架構設計與模塊化開發詳解

引言 在HarmonyOS Next開發中&#xff0c;合理的應用架構設計和模塊化開發是構建高效、可維護應用的關鍵。本文將深入探討HarmonyOS Next應用的架構設計思路&#xff0c;并通過實際代碼示例展示如何實現模塊化開發。 應用架構設計 HarmonyOS Next應用通常采用分層架構設計&…

伊利工業旅游4.0,近距離感受高品質的魅力

3月24日&#xff0c;在2025年第112屆全國糖酒會&#xff08;簡稱春糖&#xff09;前夕&#xff0c;伊利集團“可感知高品質探尋薈”活動在成都召開&#xff0c;記者走進伊利在西南地區最大的乳制品生產基地—邛崍工廠&#xff0c;零距離見證液態奶、酸奶、冷飲等乳制品的誕生&a…

測試用例生成平臺通過大模型升級查詢功能,生成智能測試用例

在測試工作中&#xff0c;查詢功能是各類系統的核心模塊&#xff0c;傳統的測試用例編寫往往耗時且重復。如何讓老舊平臺煥發新活力&#xff1f;本文將結合大模型技術&#xff0c;通過用戶輸入的字段信息&#xff0c;自動化生成高效、精準的測試用例。同時&#xff0c;我們還將…

基于javaweb的SpringBoot雪具商城系統設計與實現(源碼+文檔+部署講解)

技術范圍&#xff1a;SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬蟲、數據可視化、小程序、安卓app、大數據、物聯網、機器學習等設計與開發。 主要內容&#xff1a;免費功能設計、開題報告、任務書、中期檢查PPT、系統功能實現、代碼編寫、論文編寫和輔導、論…

【AI學習筆記】Coze平臺實現將Excel文檔批量導入數據庫全過程

背景前搖&原視頻教程&#xff1a; 最近看到很多同學都在用Coze平臺操作數據&#xff0c;我也想了解一下工作流的搭建和數據處理過程&#xff0c;但是一下子又看不懂太復雜的邏輯&#xff0c;于是上B站搜索相關的基礎教程。 Coze官方教程&#xff1a; 之前有看過Coze平臺…

【Axure高保真原型】縱向圖片輪播

今天和大家分享縱向圖片輪播的原型模版&#xff0c;載入后會自動循環輪播&#xff0c;鼠標移入圖片后停止輪播&#xff0c;可以通過點擊上下箭頭&#xff0c;向上或向下滑動切換上一張或下一張圖片&#xff0c;也可以點擊右側小圓點快速切換至對應圖片……具體效果可以打開下方…

力扣32.最長有效括號(棧)

32. 最長有效括號 - 力扣&#xff08;LeetCode&#xff09; 代碼區&#xff1a; #include<stack> #include<string> /*最長有效*/ class Solution { public:int longestValidParentheses(string s) {stack<int> st;int ans0;int ns.length();st.push(-1);fo…

如何在 React 項目中使用React.lazy和Suspense實現組件的懶加載?

大白話如何在 React 項目中使用React.lazy和Suspense實現組件的懶加載&#xff1f; 在 React 項目里&#xff0c;有時候組件功能多、體積大&#xff0c;要是一次性把所有組件都加載進來&#xff0c;網頁加載速度就會變慢。而 React 提供了 React.lazy 和 Suspense 這兩個好東西…

ffmpeg-將多個視頻切片成一個新的視頻

使用 ffmpeg 工具可以輕松完成將多個視頻切片合并為一個新的視頻。以下是實現這一目標的具體步驟和命令。 步驟概覽 1、將多個視頻切片。 2、創建文本文件列出切片的視頻片段。 3、使用 ffmpeg 合并這些切片為一個新的視頻。 一&#xff1a;安裝 ffmpeg 確保你的系統中已經安…

【第2月_day10】Pandas數據查看與選擇

以下是專為小白設計的 Pandas數據查看與選擇 學習內容&#xff0c;從基礎到應用逐步講解&#xff0c;附帶清晰示例和注意事項&#xff1a; 一、數據查看&#xff1a;快速了解你的數據 1. head() 和 tail() 作用&#xff1a;查看數據的前幾行或后幾行&#xff0c;默認顯示5行。…

Jetpack LiveData 使用與原理解析

一、引言 在 Android 開發中&#xff0c;數據的變化需要及時反映到界面上是一個常見的需求。然而&#xff0c;傳統的方式可能會導致代碼復雜、難以維護&#xff0c;并且容易出現內存泄漏等問題。Jetpack 組件中的 LiveData 為我們提供了一種優雅的解決方案&#xff0c;它是一種…

Unity2D 五子棋 + Photon聯網雙人對戰

開發環境配置 Unity版本2022.3 創建Photon賬號以及申請Photon中國區服務 官網申請賬號&#xff1a;Multiplayer Game Development Made Easy Photon Engine 中國區服務&#xff1a; 光子引擎photonengine中文站 成都動聯無限科技有限公司(vibrantlink.com) 導入PUN2插件以及…

(UI自動化測試web端)第二篇:元素定位的方法_css定位之屬性選擇器

看代碼里的【find_element_by_css_selector( )】( )里的表達式怎么寫&#xff1f; 文章介紹了第四種寫法屬性選擇器 &#xff0c;你要根據網頁中的實際情況來判斷自己到底要用哪一種方法來進行元素定位。每種方法都要多練習&#xff0c;全都熟了之后你在工作當中使用起來元素定…