写在前面的话
公司最近项目已经进入使用阶段,从用户那边反应过来的问题,说小程序打开太慢,中间白屏几秒,于是想办法来做一个等待效果。
具体效果
详情请咨询我 vx:a21544182123
具体实现(已vue为例)
按照正常的思路,路由按需加载、cdn、GZIP压缩这一系列常规的优化方案都可以加快首屏渲染的速度,但是由于微信小程序webView官方并没有提供类似骨架屏加载动画的功能,我们在选用小程序嵌套webView进入网页时 仍然会有一段时间的白屏反应时间。
那么要想优化这一现象,我们就得知道在白屏这段时间中,浏览器做了什么。
来看看vue打包后index.html里面的内容
包括各个页面中的css样式 以及最为主要的两个js文件,文件占用的大小情况如下
我们可以看到,在未开启Gzip压缩之前最大的一个 js就已经有将近1M的大小,开启Gzip压缩之后减少到300多k 整体项目文件也逼近1M,微信小程序客户端将这些1M多的文件下载再解析dom展示给到用户中间的这段时间



