介绍
小编给大家分享一下在webpack中做预渲染降低首屏空白时间的案例,希望大家阅读完这篇文章之后都有所收获、下面让我们一起去探讨吧!
<强>一、浏览器渲染过程强>
1,用户打开页面,空白屏,等待html的返回
2, html下载完毕,开始解析html,初始渲染
3,下载css, js等资源,执行js渲染虚拟DOM
4,发起请求,获取数据,渲染内容
下面我们主要是讨论一下如何通过预渲染的方式降低空白屏的时间
缩小首屏载时间是一个重要的优化项,总结来主要有以下几种方式:
1,尽可能的缩小webpack或者其他打包工具生成的包的大小
2,使用服务端渲染的方式
3,使用预渲染的方式
4,使用gzip减小网络传输的流量大小
5,按照页面或者组件分块懒加载
<强>二,传统页面开发强>
在反应,Vue这种数据驱动的框架还没盛行的时候,一般我们都是直接在html上写DOM结构的,要不就是直接服务端直出,所以我们在下载完html页面后,空白屏的时间是非常短的,因为DOM是在html中的,并不是像现在以虚拟DOM的方式写在js中,所以,我们不需要等待js下载完毕后才开始渲染页面,而是html下载完毕后直接渲染出DOM结构。
如今我们运用Vue等框架进行开发的时候,一般在html结构都是下面这样的
& lt; ! DOCTYPE html> & lt; html  lang=癳n"祝辞 & lt;才能head> ,,& lt; meta charset=癠TF-8"比; ,,& lt; title> title & lt;才能/head> & lt;才能body> ,,& lt; div id=癮pp"祝辞& lt;/div> ,,& lt; https://www.yisu.com/zixun/script src="/bound.js "> 脚本> 身体>