页面加载完成之前的全屏 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>

以上。

相关推荐
甜味弥漫几秒前
React Router:从单页应用到前端路由
javascript·node.js
柒和远方3 分钟前
Worker Readiness:为什么 `/health` 不能证明后台任务能跑
前端·后端·架构
lkshop4 分钟前
Next.js 网站 SEO 优化:从 SSR、Sitemap 到结构化数据
开发语言·javascript·ecmascript
吃糖的小孩5 分钟前
Web Owner Console 还没写前端,我先给它设计 read model
前端
析数塔5 分钟前
2026前端框架深度解析:React Compiler、Angular Zoneless、Vue 3.5重写游戏规则
前端·vue.js·react.js
嘟嘟07176 分钟前
Node.js spawn 实现迷你 Cursor 自动化终端|子进程完整解析
前端·后端·面试
程序员Agions7 分钟前
ES2026,早该这样了
前端·javascript
ONE_SIX_MIX8 分钟前
lightweight-charts-onesixth v2.8.1 → v3.1.1 更新总览
java·前端·python
恋猫de小郭8 分钟前
Flutter material/cupertino 解耦最新进展,已经在做新样式了
android·前端·flutter
weedsfly9 分钟前
纯函数与副作用——前端开发中最容易被忽视的质量保证
前端·javascript·面试