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

以上。

相关推荐
涛涛ing17 分钟前
OpenAI Astra 泄露:零样本生成 3D 网页,前端开发者慌了吗?
前端
ssshooter38 分钟前
现在网页都能提供 MCP 了?!
前端·人工智能·程序员
杉氧40 分钟前
状态管理变迁史:为什么我们放弃了 Redux 选择 Zustand?
android·前端·react native
cidy_981 小时前
OpenCode 手动配置火山方舟 Agent Plan 教程
前端
鹏多多1 小时前
PC 网站接入微信登录,这 10 个坑我替你踩完了!
前端·javascript·vue.js
律宏阔1 小时前
微信小程序使用 Orval + OpenAPI 自动生成接口:Axios 兼容踩坑记录
前端·微信小程序
律宏阔2 小时前
微信小程序集成 TDesign 完整记录:解决 NPM packages not found
前端·微信小程序
律宏阔2 小时前
微信小程序 ECharts 瘦身实战:分包异步化 + componentPlaceholder 避开主包 2MB 限制
前端·微信小程序
夏天要喝冰可乐2 小时前
从 Idea 到开源插件:我用 Vibe Coding 做了「文章摆渡」
前端·ai编程·vibecoding
小小小小宇2 小时前
pi agent
前端