路由懒加载与性能优化

前端性能优化-番外篇-动态路由和vue-router懒加载 官方资料: https://router.vuejs.org/zh/guide/advanced/lazy-loading.html 路由懒加载和非懒加载的差别: 1、在项目中切换路由,明显可以看到,非懒加载只有在初次切换路由时加载所有的路由js文件,懒加载每次切换路由会加载新的js。(切换相同路由使用缓存不算) 2、打包项目后可见,非懒加载所有路由相关js都打包在0*.js文件中了,路由懒加载... 阅读详情

我们都知道,路由懒加载是新能优化的一种表现,但这种表现的具体内容是怎么样的呢?

一、按需引入形式的路由懒加载,将每个组件生成一个独立的 js文件,进行按需引入

1.首先是普通的路由加载。页面首次加载时,浏览器就把路由中的所有的组件一股脑的全加载到app.js中。

import Vue from 'vue'
import VueRouter from 'vue-router'
import Home from '../views/Home.vue'
import About from "../views/About.vue"

Vue.use(VueRouter)

const routes = [
  {
    path: '/',
    name: 'Home',
    component: Home
  },
  {
    path: '/about',
    name: '路飞是乔伊波伊',
    // route level code-splitting
    // this generates a separate chunk (about.[hash].js) for this route
    // which is lazy-loaded when the route is visited.
    // component: () => import(/* webpackChunkName: "about" */ '../views/About.vue')
    component:About
  }
]

const router = new VueRouter({
  mode: 'history',
  base: process.env.BASE_URL,
  routes
})

export default router

views中的about

<template>
  <div class="about">
    <h1>This is an about page </h1>
    about中的乔伊波伊
  </div>
</template>

此时,app.js的内容大小是113kB,

现在!,看下app中的有什么内容

 

 可以发现,about组件中的内容,已经被加载到app.js中,但是这时我还没有叫它加载about中的内容。

2.再看下,路由懒加载的方式加载页面。

import Vue from 'vue'
import VueRouter from 'vue-router'
import Home from '../views/Home.vue'

Vue.use(VueRouter)

const routes = [
  {
    path: '/',
    name: 'Home',
    component: Home
  },
  {
    path: '/about',
    name: '路飞是乔伊波伊',
    // route level code-splitting
    // this generates a separate chunk (about.[hash].js) for this route
    // which is lazy-loaded when the route is visited.
    component: () => import(/* webpackChunkName: "about" */ '../views/About.vue')
  }
]

const router = new VueRouter({
  mode: 'history',
  base: process.env.BASE_URL,
  routes
})

export default router

app.js内容的大小是104kB

 并且,没有在app中搜到about组件中的内容,说明没有被加载出来,也就少了9kB,

这是一个组件节省的大小,如果更多组件,那么他的一个提升性能的空间就越大。

二、component: (resolve) => { require(['@/views/About.vue'], resolve) }的路由懒加载

Vue - Router全栈开发的路由懒加载性能优化 在全栈开发中,单页面应用(SPA)越来越受欢迎。然而,随着项目规模的不断扩大,打包后的文件体积也会变得越来越大,这会导致首屏加载时间变长,用户体验变差。Vue - Router的路由懒加载就是解决这个问题的有效方法。本文将详细介绍Vue - Router路由懒加载的相关知识,包括原理、实现方式、性能优化案例等,范围涵盖从基础概念到实际应用的各个方面。本文首先会介绍相关的核心概念,包括Vue - Router和路由懒加载;然后讲解核心概念之间的关系和原理架构; 阅读详情

相关推荐

ionic(angular)之优化路由(路由懒加载,包括js文件和html,css都按需加载)

ionic(angular)之优化路由(路由懒加载,包括js文件和html,css都按需加载)

路由懒加载(Vue项目的优化问题)

0.什么是懒加载 凡是懒加载都是首次加载数据量比较大时,优化至延后加载。 例如图片懒加载,当用户看不到图片时就不加载,用到时再获取数据. 1.路由懒加载 懒加载网址:https://router.vuejs.org/zh/guide/advanced/lazy-loading.html#%E6%8A%8A%E7%BB%84%E4%BB%B6%E6%8C%89%E7%BB%84%E5%88%86%E5%9D%97 平时使用的Vue属于SPA应用:single page application(单页应用)

weixin_47886687的博客 523

嘉立创EDA vs Altium Designer:新手如何选择?从界面到实战全对比

本文全面对比了嘉立创EDA与Altium Designer(AD)两大PCB设计工具,从设计哲学、界面交互、封装库管理、设计规则引擎、协作功能到成本生态六大维度进行深入分析。嘉立创EDA以极简设计和云端协作为特色,适合学生和创客快速上手;而AD则凭借专业级精准控制,成为高端电子设计的行业标准。通过实战案例和详细对比表格,帮助新手根据项目需求选择合适的EDA工具。

weixin_30296405的博客 720

vue首屏加载优化(路由懒加载)

vue首屏加载过慢问题 首屏加载过慢原因: vue进行的是单页面开发,第一次加载页面时会一次性几乎把所有的组件数据下载完毕,导致加载时间过长,出现白屏停留时间过长的情况,也就是首屏加载过慢问题。 解决办法: 路由懒加载 ui 框架按需加载 gzip 压缩 一、路由懒加载 官方描述: 当打包构建应用时,JavaScript 包会变得非常大,影响页面加载。如果我们能把不同路由对应的组件分割成不同的代码块,然后当路由被访问的时候才加

Flying____fish的博客 1692

DIY天文摄影:如何用NMP溶剂安全去除佳能CMOS传感器的拜耳滤镜(附详细步骤)

本文为天文摄影爱好者提供了一份详尽的DIY指南,介绍如何使用NMP溶剂安全去除佳能CMOS传感器的拜耳滤镜,将其改造为高灵敏度单色相机。文章深入剖析了NMP溶剂的作用原理与关键风险,并系统性地拆解了从材料准备、分步操作到后期验证的完整实践流程,旨在帮助具备动手能力的爱好者实现深空天体摄影的进阶目标。

w3x4y的博客 306

Python脚本自动化芯片设计?PyAether实战教程带你玩转EDA

本文通过PyAether实战教程,详细介绍了如何利用Python脚本实现芯片设计自动化。内容涵盖环境搭建、核心对象模型解析,并重点演示了原理图自动生成、参数化单元创建及设计验证流程集成,帮助EDA工程师从重复性手动操作中解放,显著提升设计效率与一致性。

e4f5g6h的博客 1312

vue“路由懒加载” 技术,让网页快速加载 (优化篇)

(含代码示例、截图演示)让中大型vue项目,按需加载文件,让网页快速渲染! 官方文档:路与懒加载 所谓的路由懒加载: 代码示例 · 对比: 1. 没有优化的代码(截图1) 2. 优化后的代码(截图2) 加载性能 · 截图对比:(以google浏览器为例) 总结:从截图2,我们可以看到,确实是实现了更快时间,加载文件的按需加载,组件化加载。 以上就是关于 “ vue...

草巾冒小子的博客 2302

IEC 62061 总结与适用范围

IEC 62061 是国际电工委员会(IEC)制定的。

cactusDaYe的博客 1081

路由懒加载优化

首先得需要插件支持:syntax-dynamic-import import Vue from 'vue' import VueRouter from 'vue-router' /*import First from '@/components/First' import Second from '@/components/Second'*/ Vue.use(Vu...

baicheng1855的博客 194

NVIDIA DGX Spark 开发环境深度配置与优化指南

定期系统维护每月执行一次完整的系统更新监控存储空间使用情况,及时清理临时文件定期检查硬件健康状况开发习惯优化使用tmux或screen管理长时间运行的任务配置自动化测试和代码质量检查建立完善的项目文档体系性能调优周期每月重新评估和调整系统参数根据工作负载特点优化容器配置持续监控和记录性能指标DGX Spark作为一个强大的AI开发平台,其真正的价值需要通过精细的环境配置和优化才能充分发挥。本文提供的配置方案和建议均基于实际生产环境经验,旨在帮助开发者构建稳定、高效、可维护的开发环境。

time_days的博客 3684

MicroPython ubluetooth 库详细介绍

MicroPython的ubluetooth库为蓝牙通信提供了强大的支持,使得开发者能够在MicroPython环境下轻松实现蓝牙设备之间的通信。其中ubluetooth库为MicroPython提供了强大的蓝牙通信功能,使得开发者能够轻松地在各种支持MicroPython的硬件平台上实现蓝牙设备之间的通信。它提供了一系列的函数和类,用于实现蓝牙设备的扫描、连接、数据传输等功能。- 上述代码中,首先创建了一个蓝牙服务和一个特征,然后可以通过read和write函数读取和写入特征值。# 处理连接成功事件。

m0_46311182的博客 1761

关于懒加载的性能优化

简单介绍关于懒加载的概念,特点和实现原理,方便读者更好的理解,什么是懒加载

m0_72089989的博客 403

缺陷检测-金属表面缺陷检测

1介绍 缺陷检测是工业视觉技术中最重要的组成部分。业务广泛,场景丰富,技术难点高、工作量大。针对不同的场景,选择不同的相机和

huneng1991的专栏 5248

路由懒加载的实现与性能优化

本文深入探讨了路由懒加载在单页面应用(SPA)中的实现与优化策略。通过动态模块加载技术,结合ES6的import()语法和框架路由机制,可将路由组件按需拆分为独立代码块,显著减少首屏加载时间。文章详细介绍了Vue和React生态中的具体实现方案,包括代码块命名优化、预加载策略以及错误处理机制。同时提出性能优化深度策略,如代码分割优化、骨架屏技术、缓存策略等,并强调监控调优的重要性。通过合理拆分粒度和渐进式增强,路由懒加载能有效提升SPA性能,改善用户体验和SEO表现。

974

Coze 上 OpenClaw 完整使用攻略(零代码 + 24 小时在线 + 飞书 / 微信接入)

Coze(扣子)是目前国内零门槛部署 OpenClaw 最友好的平台,无需服务器、不用命令行,5 分钟即可拥有可执行本地 / 云端任务的 AI 助手,还能一键发布到飞书、微信、钉钉等 IM。

hy行者勇哥的博客 2921

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Vue项目性能优化之路由懒加载

Vue项目性能优化之路由懒加载 为什么要路由懒加载? Vue Router官网有说明: 当打包构建应用时,JavaScript 包会变得非常大,影响页面加载。 如果我们能把不同路由对应的组件分割成不同的代码块,然后当路由被访问的时候才加载对应组件,这样就更加高效了。 是的,一个项目如果比较大的话,打包之后的app.xxxx.js也会比较大,这样可能会造成首屏渲染比较慢,有的甚至会白屏好几秒。如...

u014054437的博客 1077

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

利用路由懒加载和CDN分发策略,对Vue项目进行性能优化

CDN(内容分发网络)是一种通过将内容分发到离用户更近的服务器来提高网站性能和用户体验的技术

杨荧的优快云博客 2457

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

2025 Angular性能优化指南:Webpack代码分割与路由懒加载实战

你是否还在为Angular应用首次加载缓慢而烦恼?用户因等待太久而流失?本文将通过Webpack打包优化与路由懒加载策略,帮你实现应用加载速度提升60%以上,同时提供完整的代码示例和项目配置参考。 读完本文你将掌握: - Angular代码分割的核心原理与应用场景 - Webpack打包优化的5个关键配置 - 路由懒加载的3种实现方式与最佳实践 - 预加载策略与性能监控方案 ## 一、代码分割...

gitblog_00500的博客 1194

Django 路由性能优化指南:缓存与懒加载双剑合璧

本教程深入解析Django路由性能优化两大核心技术:路由缓存机制通过预编译路由结构并缓存,降低请求匹配耗时;懒加载配置延迟非核心路由加载,大幅提升应用启动速度。

YAnt的博客 1053

终极DataEase性能优化指南:基于路由与组件的懒加载实战

DataEase作为一款人人可用的开源数据可视化分析工具,已获得10,000+ Star的认可。随着数据看板复杂度提升,前端性能优化成为提升用户体验的关键。本文将详解如何通过路由与组件懒加载技术,显著提升DataEase的加载速度和运行流畅度。 [![DataEase 10000 Star里程碑](https://raw.gitcode.com/GitHub_Trending/da/dataea

gitblog_01080的博客 710

路由懒加载性能优化的原理

众所周知,路由懒加载是一个性能优化的点,但是为什么路由懒加载性能优化的原理是什么呢? 之前一直没想过这个问题,直到最近阿里的一次电话面试被问懵了之后才痛定思痛,决定好好想想这个问题,可是在网上也没能找出一个满意的答案,于是决定自己实践一下。。。。 话不多说,既然决定动手那么就开始吧。我们先用Vue-cli3初始化一个vue工程,选择SPA和Vue-router,其他随意。 搭建好工程之后,打...

guxin_duyin的博客 3008

前端性能优化(二) vue路由懒加载

路由懒加载的好处 像vue这种单页面应用,用构建工具打包之后的包会非常大,导致网页白屏时间过长,影响用户体验,而运用懒加载则可以将页面进行划分,需要的时候加载页面,可以有效的分担首页所承担的加载压力,减少首页加载用时 ...

weixin_39357177的博客 749

Vue Router 4的懒加载与路由守卫性能优化:如何提升加载速度与访问控制!

在现代Web开发中,性能优化是确保用户体验的关键因素之一。对于单页面应用(SPA),页面加载速度和资源加载策略直接影响到用户的使用体验。随着应用规模的扩大,如何高效地加载和管理路由、控制页面访问权限,已成为开发者亟待解决的问题。Vue Router 4作为Vue 3中的官方路由管理工具,提供了懒加载和路由守卫的强大功能,能够在提升应用性能和确保安全性的同时,优化页面加载速度和访问控制策略。通过路由懒加载,开发者可以延迟加载路由组件,从而减少初次加载的时间;

2201_75863687的博客 865

Angular路由懒加载原理与性能优化实践

代码分割(Code Splitting)是现代前端性能优化的核心技术,通过Webpack的动态导入机制将应用拆分为独立模块。Angular路由懒加载基于此技术实现按需加载,能有效减少首屏资源体积,提升LCP指标。在工程实践中,需要结合预加载策略和模块分组技术,配合Webpack的chunk配置实现最佳性能。实测数据显示,合理应用懒加载可使首屏资源减少80%以上,特别适合电商后台等大型Angular应用。

weixin_33393017的博客 173

Vue进阶实战05,路由懒加载:实现方式与性能优化原理全解析

路由懒加载是优化单页应用性能的关键技术,通过代码分割实现按需加载,减少首屏资源体积。本文详解了Vue和React中的实现方式:Vue使用import()动态导入配合路由配置,React通过React.lazy和Suspense组件实现。其优化原理包括减少首屏加载资源、优化加载时序、利用浏览器缓存和降低内存占用。使用时需注意避免过度拆分代码块,并合理处理加载状态。

码路同行 1094

vue项目性能优化(路由懒加载、gzip加速、cdn加速)

前端工程性能优化一说意义深远悠长,本章主要介绍除了一些基础优化外如何实行路由懒加载、Gzip加速、CDN加速,让网页飞的快一些。 基础优化 老生常谈的一些: 不要在模板中写复杂的表达式 慎用watch尤其是deep 合理的使用v-if/v-show/v-for 善用keep-alive 使用Object.freeze() ... 这里不再细开展~主要说下以下几点: 一、 开启GZIP 体积对比图: 1541KB vs 466KB 耗时对比图: 333ms vs 225ms 操作步骤:

Cool的博客 653
上一篇: html元素垂直、水平对齐的多种方式
下一篇: 鼠标移入移出事件,mouseover、mouseenter区别
Monkey~
博客等级 码龄7年 3粉丝 11原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值