页面加载完成之前的全屏 loading 图片出现的时机

目录

1,问题表现

一般打开网页时,如果资源较多会有白屏的情况,除了在项目上做首屏优化之外,同时也可以增加一个全屏 loading 图片,等资源加载完成后隐藏。

现在有2个问题

  1. loading 图片应该放在哪里?
  2. loading 图片什么时候隐藏?

2,解决

对 Vue 项目来说,可以在应用实例挂载到容器元素之后,隐藏 loading 图片。

所以一种解决方式是:loading 图片放到 App.vue 中,并在 onMouted 中隐藏即可。

执行顺序: onMouted > DOMContentLoaded 事件 > load 事件

最优的做法

因为 Vue 项目挂载应用实例时,是替换了 div#app 元素的内容。所以可在 index.html 中直接设置,最终会被替换。

html 复制代码
<div id="app">
  <style>
    .loading-img {
      position: fixed;
      width: 200px;
      height: 200px;
      left: 50%;
      top: 50%;
      margin-left: -100px;
      margin-top: -100px;
    }
  </style>
  <img class="loading-img" src="./img/loading.gif" />
</div>

以上。

相关推荐
糖果店的幽灵1 分钟前
Claude Code 完全实战指南 - 第四章:Skill 怎么写
java·服务器·前端
light blue bird9 分钟前
MES/ERP 工序 BOM 协同场景调度维护组件
前端·信息可视化·桌面端winform·多节点端·gdi图表绘制开发
鱼人21 分钟前
Vue 3 组合式 API 最佳实践:如何写出可维护的代码
前端
wuhen_n21 分钟前
LangChain 自定义 Tool 封装:打造专属 AI 能力工具集
前端·langchain·ai编程
长大198821 分钟前
彻底搞懂 JavaScript 事件循环
前端
橘猫走江湖23 分钟前
Web 前端本地存储:localStorage 与 IndexedDB
前端·javascript·indexeddb
小强198823 分钟前
CSS 布局进化史:从 Float 到 Flexbox 再到 Grid
前端
AKA__老方丈25 分钟前
删除确认 Hook - 统一管理单删/批量删除的确认弹窗与执行
前端·javascript·vue.js
云间寄信27 分钟前
JS:数据结构与集合
javascript
假如让我当三天老蒯28 分钟前
React+TS 项目结构(自学项目用)
前端·react.js