美文网首页
性能优化汇总

性能优化汇总

作者: lmmy123 | 来源:发表于2019-02-21 17:25 被阅读4次
Babel polyfill的按需加载

Babel7 主要是通过其提供的 @babel/preset-env 实现按需加载的。

npm install @babel/polyfill --save

同时,需要在 .browserslistrc 文件或者 .babelrc 的 targets 字段中指定需要兼容的浏览器范围。

之后在.babelrc文件中对 @babel/preset-env 进行配置。

@babel/preset-env 与按需加载 polyfill 相关的选项是 useBuiltIns,它有两个值需要重点关注: entry 和 usage。

当值为 entry 时,Babel 会将 import"@babel/polyfill" 或者 require("@babel/polyfill") 语句根据我们指定的环境配置替换为单个的 polyfill require。

先指定需要兼容的浏览器范围,然后安装 @babel/polyfill 并将 @babel/preset-env 的 useBuiltIns 选项值设为 usage。这样 Babel 就会自动分析每一个文件并在考虑我们指定的浏览器兼容范围的情况下,为每个文件加载其需要的 polyfill。最终项目里只引入了部分 polyfill,经测算,打包后的代码(min)较直接引入完整 babel-polyfill 的方案小60多KB,同时还避免了全局变量污染。

持久化缓存

利用 PWA(Progressive Web App渐进式WEB应用)把静态资源进行离线缓存,提高页面访问速度。
稳定公共模块的提取我们使用 webpack 内置的 DllPlugin 和 DllReferencePlugin 插件来实现,通过这两个插件提前对这些公共模块进行独立编译,打出一个 vendor.dll.js 的包,vendor.dll.js 包独立存在,hash 不会发生变化,特别适合持久化缓存。

请求优化

前后端分离+服务端首屏渲染
既做到了前后端分离,又能保证首页渲染速度,还有利于 SEO

骨架屏 (skeleton screen)

相较于传统的 loading 效果,体验更佳
@nutui/draw-page-structure [4]的webpack插件

图片格式

使用新兴的图片格式可以大大减少加载的图片体积,并有助于提升图片的解析和渲染速度,进而提升页面渲染速度
WebP 。。。谷歌系的浏览器以及欧朋浏览器支持情况良好,Firefox、Edge 也都在新版本提供了支持,可惜苹果公司一直没有跟进,Safari 直到现在也没有要支持的迹象,iOS 上的应用如果想支持,还需自行打包解析库
使用 WebP 的方式是在页面上通过JS判断当前浏览器是否支持 WebP,如果支持,则在 body 上增加一个名为 “webp” 的 class,同时把判断结果写入 localStorage,之后再进入页面时直接从 localStorage 里读取,不用每次都执行判断的代码了。然后在页面的 css 中通过 “.webp” 选择器、在 Vue 的图片过滤器中通过判断结果来决定是否加载 WebP 格式图片。

document.createElement('canvas').toDataURL('image/webp').indexOf('data:image/webp')===0


文章参考:https://mp.weixin.qq.com/s?__biz=MzUxMDYxNTgwMA==&mid=2247484283&idx=1&sn=d2892c4e78bf8a93d99e63995a2fb92b&chksm=f9010aecce7683fa362e31dcce3bb8f698412db88251c16b9f95efdb852ba8d05865ebc59045&token=1791461149&lang=zh_CN#rd

相关文章

  • Android优化

    Android性能优化汇总

  • 对于手游的优化

    给手游做优化,无非就CPU性能优化、内存性能优化、资源优化、GPU优化、IO优化、网络优化、耗电优化这些,为此汇总...

  • 性能优化汇总

    Babel polyfill的按需加载 Babel7 主要是通过其提供的 @babel/preset-env 实现...

  • 重点掌握

    【前端性能优化汇总】【Webpack原理+React原理+Redux+React Router】【输入URL后发生...

  • 前端性能优化汇总

    前端性能优化汇总(尽量干货一些):1.减少事件注册,尽量利用事件冒泡原理进行事件代理,注册到父级元素上,减少内存开...

  • 前端性能优化汇总

    网络优化 减少请求文件数,资源合并(雪碧图、SVG(Iconfont)、JS/CSS文件合并) 减少资源体积,资源...

  • 前端性能优化汇总

    前端优化一直是前端开发人员要掌握的内容目前汇总一下实践中优化的手段 目录结构 样式文件放在头部,js文件放在底部,...

  • Android性能优化汇总

    页面卡顿、cpu、gpu占用分析 android性能跟踪分析工具系列 - GPU 呈现模式分析 为什么Andro...

  • UITableView性能优化汇总

    一. Cell重⽤用 1. 数据源⽅方法优化 - (UITableViewCell*)tableView:(UIT...

  • APP性能优化汇总

    简介 随着IPhone手机市场的快速发展,苹果对 IOS APP的审核和要求也更加的苛刻。所以APP的性能是决定能...

网友评论

      本文标题:性能优化汇总

      本文链接:https://www.haomeiwen.com/subject/uowmeqtx.html