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

以上。

相关推荐
_菜鸟果果38 分钟前
高德地图 JS API 2.0 在国产 Linux/ARM 电脑上渲染失败 的排查与解决
linux·开发语言·javascript
时间的情敌39 分钟前
《回顾 2018 前端:Vue2 成熟期,Webpack4 发布,PWA 大火》
前端
Java后端的Ai之路1 小时前
前端技术Vue-09-webpack-vuejs-实战
前端·vue.js·webpack
LMT流氓兔1 小时前
第五单元——第4课:给工具参数加校验
java·前端·算法·ai·langchain
涛涛ing1 小时前
React Compiler正式“Rust化”:你项目里的Babel插件,正在被编译进打包器
前端
迷途小羔羊1 小时前
项目概述
java·javascript·后端
迷迭绿1 小时前
Cesium 轨迹回放播放器
前端·javascript·cesium
HolySaga2 小时前
我用 UTS 写了一个三端同构的蓝牙插件(Android / iOS / 鸿蒙 NEXT),把踩过的坑都讲给你听
前端
程序员老赵2 小时前
Docker 部署 XWiki:轻松搭建企业知识库与协作 Wiki
前端·docker·开源
console.log('npc')2 小时前
第 10 章 更多业务模块扩展
前端·人工智能·大模型