性能优化之四:渲染层优化
# 前言
上一篇我们已经围绕 “网络层面” 探索页面性能优化的方案,接下来本篇围绕 “浏览器渲染层面” 继续开展探索。正文开始前,我们思考如下问题:
- 浏览器渲染页面会经过哪几个关键环节?“渲染层面” 的优化从哪几方面着手?
- “渲染层面” 的性能优化方案会有哪些?
上一篇我们已经围绕 “网络层面” 探索页面性能优化的方案,接下来本篇围绕 “浏览器渲染层面” 继续开展探索。正文开始前,我们思考如下问题:
- 浏览器渲染页面会经过哪几个关键环节?“渲染层面” 的优化从哪几方面着手?
- “渲染层面” 的性能优化方案会有哪些?
中小项目,Vue-cli3 + vue2 + webpack4
缩短白屏时间,用户能够更快的看到我的页面!
白屏时间:从打开页面到看到页面,中间白屏停留的时间。
1. 减少资源体积,从而缩短请求时间
2. 减少资源请求个数,从而缩短等待时间
如果一个网页中包含比较多的图片,在页面加载时,会严重拖慢整个页面的加载速度,这就是我们今天要解决的问题.
这篇文章聊一下如何去优化图片,提高页面的加载速度。文章中演示的例子,只是将几张大图片简单的展示出来,通过这个例子去展示如何优化.
例子的源码在 github.com/XYShaoKang/… 中,可以克隆到本地进行调试,在线预览地址 xyshaokang.github.io/image-optim…
cookie 、 session 、 token 、 OAuth前言
Vue3 已经推出很长时间了,它周边的生态也是越来越完善了。之前我们使用 Vue2 的时候,Vuex 可以说是必备的,它作为一个状态管理工具,给我们带来了极大的方便。Vue3 推出后,虽然相对于 Vue2 很多东西都变了,但是核心的东西还是没有变的,比如说状态管理、路由等等。再 Vue3 种,尤大神推荐我们使用 pinia 来实现状态管理,他也说 pinia 就是 Vuex 的新版本。
那么 pinia 究竟是何方神圣,本篇文章带大家一起学透它!
TCP 三次握手和四次挥手的问题在面试中是最为常见的考点之一。很多读者都知道三次和四次,但是如果问深入一点,他们往往都无法作出准确回答。本篇尝试使用动画来对这个知识点进行讲解,期望读者们可以更加简单地地理解 TCP 交互的本质。
同域下多窗口间
localStorage能共享吗?
- 答案是可以,如果页面中出现了串数据的话,很大概率就是 localStorage 共享导致的。
那么, sessionStorage 在多窗口之间能共享状态吗?
根据 MDN 的说法: sessionStorage 属性允许你访问一个,对应当前源的 session Storage 对象。它与 localStorage 相似,不同之处在于 localStorage 里面存储的数据没有过期时间设置,而存储在 sessionStorage 里面的数据在页面会话结束时会被清除。
sessionStorage 。sessionStorage 。path 是 SVG 基本形状中最强大的一个,不仅可以实现 SVG 预定义的 line、rect、circle、ellipse、line、polyline、polygon 六种基本形状,还可以实现更复杂的效果,我们就开始学习 path 如何应用。
path 元素的能力
path 元素是 SVG 基本形状中最强大的一个,它不仅能创建其他基本形状,还能创建更多其他形状。
比如矩形(直角矩形或者圆角矩形)、圆形、椭圆、折线形、多边形等。
更重要的是能够绘制一些曲线,如贝塞尔曲线、二次曲线等。
path 元素的形状是通过属性 d 来定义的,d 属性通过 “命令和坐标” 的序列来控制整个 path 绘制的路径