前端优化这个硬骨头

42 阅读1分钟

页面渲染,其实就是各种资源加载,是一个串行的链路。HTML 加载 -> 资源加载 -> 组件初始化 -> 接口请求 -> 组件更新。性能优化是一个系统性、长期的“移山”过程,不宜过急,也不宜给阶段性目标定的“口嗨”的过高。

HTML

HTML优化主要是为了减少主文档耗时(HTML获取时间)这个情况,即常见刷新后页面白屏时间。常见手段:

  • 将HTML分发到CDN上:CDN可以根据网络流量和各个节点的连接、负载情况以及到用户的距离和响应时间等综合信息,将用户的请求重新导向流向用户最近的服务节点上,从而加快资源的加载速度;
  • 精简HTML的尺寸:压缩HTML;
  • 合理利用缓存
  • 代码拆分预加载处理等;

资源加载

资源加载一般都是整个页面加载耗时的大头,主要优化手段:能靠后就靠后能一起就一起按需加载,并且,请求尽可能并发处理。

  • 合理利用缓存
  • DNS预解析
  • 按需加载
  • 并行处理

图片部分

  • 图片压缩;
  • 大图切分,并行加载;
  • 占位图/渐进式加载;
  • 图片预加载;

接口请求

能提早请求的,就提早请求。

渲染优化

渲染优化主要是考虑用户体验和用户反馈上。在一定程度上,所有的优化手段总结来说就是用户感知要流畅,操作反馈要效率,视觉效果要层次感分明。

  • 页面loading+等待提示;
  • 骨架屏;
  • 业务操作提示;
  • 错误反馈说明等;