iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >VUE如何优化单页应用首屏加载速度
  • 399
分享到

VUE如何优化单页应用首屏加载速度

2024-04-02 19:04:59 399人浏览 薄情痞子
摘要

小编给大家分享一下Vue如何优化单页应用首屏加载速度,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!单页应用会随着项目越大,导致首

小编给大家分享一下Vue如何优化单页应用首屏加载速度,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

单页应用会随着项目越大,导致首屏加载速度很慢!!!以下给出在下知道的几种优化方案

  • 使用CDN资源,减小服务器带宽压力

  • 路由懒加载

  • 将一些静态js CSS放到其他地方(如OSS),减小服务器压力

  • 按需加载三方资源,如iview,建议按需引入iview中的组件

  • 使用Nginx开启gzip减小网络传输的流量大小

  • webpack开启gzip压缩

  • 若首屏为登录页,可以做成多入口,登录页单独分离为一个入口

使用CDN资源,减小服务器带宽压力

在index.html中引入cdn资源

...
 <body>
  <div id="app">
  </div>
  <!-- built files will be auto injected -->
  <script src="https://cdn.bootcss.com/vue/2.5.2/vue.min.js"></script>
  <script src="Https://cdn.bootcss.com/vue-router/3.0.1/vue-router.min.js"></script>
  <script src="https://cdn.bootcss.com/vuex/3.0.1/vuex.min.js"></script>
  <script src="https://cdn.bootcss.com/vue-resource/1.5.1/vue-resource.min.js"></script>
 </body>
 ...

修改 build/WEBpack.base.conf.js

module.exports = {
 context: path.resolve(__dirname, '../'),
 entry: {
  app: './src/main.js'
 },
 externals:{
  'vue': 'Vue',
  'vue-router': 'VueRouter',
  'vuex':'Vuex',
  'vue-resource': 'VueResource'
 },
 ...
}

修改src/main.js src/router/index.js 注释掉import引入的vue,vue-resource

// import Vue from 'vue'
// import VueResource from 'vue-resource'
// Vue.use(VueResource)

路由懒加载

const workCircle = r => require.ensure([], () => r(require('@/module/work-circle/Index')), 'workCircle')
const workCircleList = r => require.ensure([], () => r(require('@/module/work-circle/page/List')), 'workCircleList')

将一些静态js css放到其他地方(如OSS),减小服务器压力

注意这里的js文件,需要将结果抛出,然后在需要用到该js的组件中import引入

按需加载三方资源,如iview,建议按需引入iview中的组件

按需引用请查看iview官方文档iview

使用nginx开启gzip减小网络传输的流量大小

配置nginx,可以参考Nginx开启Gzip压缩大幅提高页面加载速度

webpack开启gzip压缩

这里需要配合Nginx服务器,Nginx开启gzip

config/index.js中

module.exports = {
 build: {
  ...
  // Gzip off by default as many popular static hosts such as
  // Surge or Netlify already gzip all static assets for you.
  // Before setting to `true`, make sure to:
  // npm install --save-dev compression-webpack-plugin
  productionGzip: true, // 就是这里开启gzip,vue-cli搭建项目,这里默认为false
  productionGzipExtensions: ['js', 'css'],

  // Run the build command with an extra argument to
  // View the bundle analyzer report after build finishes:
  // `npm run build --report`
  // Set to `true` or `false` to always turn it on or off
  bundleAnalyzerReport: process.env.npm_config_report
 }
}

build/webpack.prod.conf.js中

使用vue-cli构建项目时,默认会有这段代码

if (config.build.productionGzip) {
 const CompressionWebpackPlugin = require('compression-webpack-plugin')
 webpackConfig.plugins.push(
  new CompressionWebpackPlugin({
   asset: '[path].gz[query]',
   alGorithm: 'gzip',
   test: new RegExp(
    '\\.(' +
    config.build.productionGzipExtensions.join('|') +
    ')$'
   ),
   threshold: 10240,
   minRatio: 0.8
  })
 )
}

若首屏为登录页,可以做成多入口,登录页单独分离为一个入口

修改webpack配置

在原先只有一个入口叫app的基础上,再加一个叫login的入口,指向另一个入口js文件;

既然是两个页面,那么原先只有一个的HtmlWebpackPlugin也需要再添加一个,并且filename和template改成登录页的;

HtmlWebpackPlugin默认会把所有资源放进html,为了去掉不需要的资源,需要在HtmlWebpackPlugin选项里分别添加excludeChunks: ['login']和excludeChunks: ['app'];

原先的某些CommonsChunkPlugin会导致报错,删掉只剩下一个manifest的CommonsChunkPlugin就好。

添加登录相关文件

添加之前配好的login入口文件,与app类似,但是去掉登录页不需要的东西,如用不到的组件和样式等;

添加login入口专用的router配置文件,去掉其他路由,只留下登录页一个就好:

VUE如何优化单页应用首屏加载速度

只留登录路由

添加登录页的html模板,也是去掉登录里用不到的资源。

修改其他细节

登录完不是用vue-router的push方法,而是改成直接修改location.href跳到另一个页面;

去除原来app路由中的login;

登录页中可以使用隐藏的iframe等方式预加载app页面中的数据(猜想)。

以上是“VUE如何优化单页应用首屏加载速度”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网JavaScript频道!

--结束END--

本文标题: VUE如何优化单页应用首屏加载速度

本文链接: https://www.lsjlt.com/news/79257.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • VUE如何优化单页应用首屏加载速度
    小编给大家分享一下VUE如何优化单页应用首屏加载速度,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!单页应用会随着项目越大,导致首...
    99+
    2022-10-19
  • vue 首页加载,速度优化及解决首页白屏的问题
    目录一、Spa单页面的加载过程二、首页加载慢的原因三、加载速度慢解决方案1、分离打包第三方资源包2、第三方库使用CDN引入3、vue-router路由懒加载4、静态资源压缩,代码压缩...
    99+
    2022-11-13
    vue 首页加载 vue 速度优化 vue 首页白屏
  • vue项目中怎么优化首页加载速度
    本篇文章为大家展示了vue项目中怎么优化首页加载速度,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1: 针对第三方js库的优化我们项目里用到的第三方js库主要有:v...
    99+
    2022-10-19
  • Vue首评加载速度及白屏时间优化详解
    目录项目背景splitChunksCDNGZIP删除文件预加载项目背景 测试环境的管理后台应客户需求最近加了点东西,加载的东西变多,使得整个项目变得有点臃肿了,首屏以及刷新后渲染速度...
    99+
    2022-11-13
  • 如何优化网站的页面加载速度
    优化网站页面加载速度涉及多个关键环节:1、优化图片和媒体文件、2、减少HTTP请求、3、启用缓存、4、使用CDN、5、压缩和合并CSS/JavaScript文件、6、减少服务器响应时间。优化图片和媒体文件能直接减少页面大小,进而提高加载速度...
    99+
    2023-10-29
    加载 速度 页面
  • PHP和Laravel:如何优化页面加载速度?
    随着互联网的发展,网站的页面加载速度成为了一个重要的考量因素。快速的页面加载速度对于用户体验和搜索引擎排名都有着重要的影响。本文将介绍如何使用PHP和Laravel来优化页面加载速度。 一、使用缓存 缓存是提高页面加载速度的最基本的方法之一...
    99+
    2023-07-24
    load laravel git
  • 如何在PHP开发中优化网页加载速度?
    如何在PHP开发中优化网页加载速度?随着互联网的快速发展,网页加载速度对用户体验变得越来越重要。当网页加载速度慢时,用户往往会选择关闭页面或者离开网站。因此,对于PHP开发者来说,优化网页加载速度是一个非常重要的任务。下面将介绍一些优化网页...
    99+
    2023-11-04
    缓存(Cache) 压缩(Compression) 异步加载(Asynchronous loading)
  • 香港服务器如何优化网页加载速度
    选择域名解析比较快的域名服务器;减少页面请求的数量,如减少网页图片,合并网页js,css代码等;在搭建网站时,减少页面大小,尽量简化页面结构上的代码和对图片的大小进行压缩等;使用CDN加速可以提高网站访问速度。...
    99+
    2022-10-16
  • PHP开发中如何优化网页加载速度和响应时间
    标题:PHP开发中优化网页加载速度和响应时间的技巧摘要:本文将介绍一些常用的优化技巧,以帮助PHP开发者提高网页加载速度和响应时间,同时提供具体的代码示例。正文:随着网页内容的增加和用户对响应速度的要求提高,优化网页加载速度和响应时间变得愈...
    99+
    2023-10-21
    优化 网页 加载速度
  • Vue如何通过懒加载提升页面响应速度
    这篇文章将为大家详细讲解有关Vue如何通过懒加载提升页面响应速度,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Vue的优点Vue具体轻量级框架、简单易学、双向数据绑定、组件化、数据和结构的分离、虚拟DOM...
    99+
    2023-06-15
  • 如何优化网站的页面加载速度以改善SEO
    优化网站页面加载速度对于SEO以及用户体验都非常重要。主要体现在:一、图片优化;二、使用CDN服务;三、减少HTTP请求;四、代码优化;五、服务器优化;六、使用缓存。图片是网站加载速度的常见瓶颈。使用像JPEG或WebP这样的高效格式,并通...
    99+
    2023-10-29
    加载 速度 页面
  • PHP开发中如何优化用户体验和页面加载速度
    随着互联网技术的发展,网站的用户体验和页面加载速度已成为用户选择使用网站的重要考虑因素之一。而PHP作为一种广泛应用于网站开发的脚本语言,对于优化用户体验和页面加载速度也有着很多可操作的方法。本文将通过具体的代码示例,介绍一些PHP开发中常...
    99+
    2023-10-21
    导航 缓存 优化: 性能 用户体验: 响应式设计 页面加载速度: 压缩
  • Java中的HTTP异步编程:如何优化页面加载速度?
    随着互联网的不断发展,网站的访问量越来越大,页面加载速度成为了用户体验的重要指标之一。而HTTP异步编程可以帮助我们优化页面加载速度,提高用户体验。 一、为什么要使用HTTP异步编程? 在传统的HTTP编程中,每个请求都是阻塞的,即一个请...
    99+
    2023-09-06
    http 异步编程 load
  • 如何使用Css Flex 弹性布局优化移动端网页加载速度
    随着移动设备的普及和互联网的快速发展,移动端网页加载速度成为了开发人员需要重视的问题之一。网页加载速度的快慢直接影响用户体验和网站的流量。在移动端网页的布局方面,CSS Flex弹性布局是一个值得开发人员注意的技术,它可以帮助我们更好地优化...
    99+
    2023-10-21
    移动端 优化 加载速度 CSS flex
  • vue如何使用v-if来优化页面加载
    小编给大家分享一下vue如何使用v-if来优化页面加载,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!使用 v-if 来优化页面加...
    99+
    2022-10-19
  • 如何使用Go语言优化Laravel日志加载速度?
    随着互联网技术的发展,Web应用程序的开发越来越受到人们的关注。Laravel是一个流行的PHP Web框架,它提供了丰富的功能和易于使用的API,使得Web应用程序的开发变得更加简单和高效。然而,Laravel在处理日志时,会遇到一些性能...
    99+
    2023-10-18
    load laravel 日志
  • 分布式容器中如何优化ASP应用程序的加载速度?
    随着云计算和容器技术的不断发展,分布式容器已经成为了现代应用程序部署的标准。但是,在使用分布式容器部署ASP应用程序时,往往会遇到一些性能问题,其中最常见的问题就是应用程序的加载速度较慢。本文将介绍如何通过优化分布式容器来提高ASP应用程序...
    99+
    2023-10-03
    load 分布式 容器
  • 如何使用PHP开发缓存优化图片加载速度
    如何使用PHP开发缓存优化图片加载速度随着互联网的快速发展,网页加载速度成为用户体验的重要因素之一。而图片加载速度是影响网页加载速度的重要因素之一。为了加速图片的加载,我们可以使用PHP开发缓存来优化图片加载速度。本文将介绍如何使用PHP开...
    99+
    2023-11-08
    图片加载 优化技巧 PHP缓存
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作