vue优化首屏加载速度(vue如何优化首页加载速度)

问题:vue如何优化首屏加载速度?

问题描述:

在Vue项目中,引入到工程中的所有js、css文件,编译时都会被打包进vendor.js,浏览器在加载该文件之后才能开始显示首屏。若是引入的库众多,那么vendor.js文件体积将会相当的大,影响首屏的体验。

解决方法是:

将引用的外部js、css文件剥离开来,不编译到vendor.js中,而是用资源的形式引用,这样浏览器可以使用多个线程异步将vendor.js、外部的js等加载下来,达到加速首开的目的。外部的库文件,可以使用CDN资源,或者别的服务器资源等。

几种常用的优化方法:

  1. 使用npm run build --report命令进行大文件定位
  2. 路由的按需加载
  3. 将打包生成后 index.html页面 里面的JS文件引入方式放在 body 的最后
  4. 用文档的cdn文件代替 npm 安装包
  5. UI库的按需加载
  6. 开启 Gzip 压缩

详解:


1、大文件定位:

我们可以使用 webpack可视化插件Webpack Bundle Analyzer查看工程js文件大小,然后有目的的解决过大的js文件。

使用命令:

npm run build --report
   

2、路由的按需加载:

3、将JS文件引入方式放在 body 的最后 :

默认情况下,build 后的 index.html 中,js 的引入是在 head 中,使用html-webpack-plugin插件,将inject的值改为body。就可以将 js 引入放到 body 最后。

首先下载插件:(一般vue-cli项目里默认有,可以package.json里面检查是否含有)

npm install html-webpack-plugin@2 --save-dev
   

在 build文件夹下webpack.base.conf.js配置:

var htmlWebpackPlugin = require('html-webpack-plugin')
module.exports = {
 entry: './src/script/main.js',
 output: {
 filename: 'js/bundle.js',
 path: path.resolve(__dirname, 'dist')
 },
 plugins: [
 new htmlWebpackPlugin({
 inject: 'body'
 })
 ]
}
   

即在 plugins 里面加上 htmlWebpackPlugin 插件。

4、用文档的cdn文件代替 npm 安装包:

用文档的cdn文件代替,而不用打包到vender里面去。具体的做法是:

1、在index.html里面引入依赖库js文件

 // index.html
   

2、在mian.js里面去掉第三方js的import,因为在第一步已经通过script标签引用进来了。

3、把第三方库的js文件从打包文件里去掉

即在
       build/webpack.base.conf.js
文件的module里面与rules同层加入externals

5、UI库的按需加载:

一般 UI库 都提供按需加载的方法,按照文档即可配置。

6.、开启 Gzip 压缩

Gzip:

在 config/index.js 设置 productionGziptrue,开启 Gzip 压缩

(0)

相关推荐

  • 关于首屏设计的那些事

    写在前面 6年前,深入电商设计这个圈子: 6年后,淡出电商设计这个圈子: @马良重生 细想起,在电商行业里从自学到现在发现,越是基础的内容越是容易忽略.以下讲到的知识点,并不是一促而就的整理,而是在工 ...

  • 知名网站的首屏简洁设计趋势

    小编话:当进入网站时,第一眼吸引你的什么?没错,一定会注意到网站的头部信息.那么网站的头部信息或小小的导航栏,那么应该怎么样设计呢?今天@喵酱紫同学就给我们分享了一些非常实用的小技巧,来帮助大家实现一 ...

  • 微信无法加载图片怎么办?微信图片加载失败的多种解决方法

    微信在聊天的过程中,斗图是很多用户割舍不掉的乐趣,很多用图片表达出来的意思往往比用文字表达更加的方便,但是有时候由于某些原因,微信加载的时候会出现图片加载错误或者无法加载的情况,对于这种情况小编总结出 ...

  • DAEMON Tools Lite如何加载多个镜像 虚拟光驱加载多个镜像文件方法

    DAEMON Tools Lite怎么加载多个镜像文件?对于多个镜像的安装包则需要加多个镜像,例如ANSYS需要加载两个虚拟光驱,而DAEMON Tools Lite就可以加载多个镜像,可实现读取多个 ...

  • u盘传输速度一般是多少?u盘传输速度慢怎么办?

    有网友提到他的U盘传输速度特慢,每秒只有几百KB,而有的U盘传输速度却高达到几拾MB,问小经编U盘传输速度多少才算正常,那么u盘传输速度一般是多少呢,我们有必要来讲讲有关U盘传输速度的问题,我们可以从 ...

  • 微信加不了好友怎么回事?微信加不上好友的原因和解决方法

    为什么我的微信加不了好友?不少微信用户反映说,自己在添加好友时发现加不上好友,这是怎么回事呢?该怎么解决呢?下面呢,小编就给大家分析一下微信加不上好友的原因与解决方法,来看具体的教程内容吧! 微信加不 ...

  • QQ上怎么看加了我,我却没加他的好友

    因为好奇想看看别人加了我,我没加他的有多少.本文为大家讲解QQ上怎么看加了我,我却没加他的好友. 操作方法 01 登入最新版QQ账号 02 进入QQ后点击头像, 03 进入页面点击左下角设置 04 进 ...

  • 如何限制上传速度软件来限制局域网上传速度

    在公司局域网中,可能很多网管员都想限制局域网下载速度,防止局域网个别电脑利用一些P2P软件下载大量文件而抢占局域网网速.但是,如果单纯只是限制电脑下载速度,恐怕还无法真正阻止那些P2P软件过量占用局域 ...

  • 微信加粉丝的方法,微信怎么加人又快又多

    微信加粉丝的方法,微信怎么加人又快又多 操作方法 01 微信是一个以移动端的为主的互动工具,可根据各自的需要在线进行加微信好友,同时加上好友后定时维护. 02 不同的微信帐号会需要不同的微信粉丝,不同 ...

  • 在开机时加载太多程序如何优化

    操作方法 01 计算机在启动过程中,除了会启动相应的驱动程序外,还会启动一些程序,这些程序我们称为随机启动程序.随机启动程序不但会影响系统启动时的速度,而且还会消耗更多的计算机资源,如物理内存. 一般 ...