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

以上。

相关推荐
一次旅行7 分钟前
CSRF和SSRF
前端·网络·csrf
亓才孓7 分钟前
【反射机制】
java·javascript·jvm
昱宸星光17 分钟前
spring cloud gateway内置网关filter
java·服务器·前端
宁雨桥25 分钟前
浏览器渲染原理
前端·浏览器·原理
Moment25 分钟前
此 KFC 不是肯德基,Kafka、Flink、ClickHouse 怎么搭、何时省掉 Flink
前端·后端·面试
Cherry的跨界思维31 分钟前
【AI测试全栈:质量】47、Vue+Prometheus+Grafana实战:打造全方位AI监控面板开发指南
vue.js·人工智能·ci/cd·grafana·prometheus·ai测试·ai全栈
鹏北海-RemHusband33 分钟前
JSBridge 原理详解
前端·信息与通信
T^T尚34 分钟前
一个完整的项目怎么打包成为一个app
前端·uni-app
wing9838 分钟前
通往“全干”之路一:前端部署
前端·vue.js·全栈