【VUE项目实战】62、项目优化上线准备+生成项目报告

95 篇文章 599 订阅
订阅专栏

接上篇《61、添加页面加载进度条效果》
上一篇我们完成了为项目添加加载进度条的效果,整个项目算是基本开发完毕了,本篇我们来开始学习项目的优化以及上线工作。

一、学习目标

我们的VUE项目开发完毕之后,就需要考虑如何优化项目,以及将项目部署上线,供外界用户进行使用。所以我们的学习目标为:
◆能够优化Vue项目
◆能够部署Vue项目

学习内容为:
◆项目优化:如何对Vue项目进行优化;
◆项目上线:如何将优化完毕后的Vue项目部署上线。

二、项目优化

1、项目优化策略
(1)生成打包报告:通过项目生成一个打包的报告,根据报告发现项目存在的问题,可以进行相应的解决。
(2)第三方库启用CDN:为第三方库开启CDN(内容分发网络,是一种分布式网络)加载,会提高项目首页的加载效率。
(3)Element-UI组件按需加载
(4)路由懒加载:因为Webpack打包后的文件会很大,造成进入首页时需要加载的内容过多,时间过长,会出现长时间白屏。运用懒加载可以将页面进行划分,需要的时候加载页面,可以有效的分担首页所承担的压力,减少首页加载时间。
(5)首页内容定制:优化App.vue,自定义首页的样式。

以上就是我们本次项目优化的策略。我们先一个个来,首先我们来生成项目打包报告。

三、生成打包报告

打包时,为了直观地发现项目中存在地问题,可以在打包时生成报告。生成报告的方式有两种:
1、通过命令行参数的形式生成报告

//通过 vue-cli 的命令选项可以生成打包报告
// --report 选项可以生成 report.html以帮助分析包内容
vue-cli-service build --report

即我们手动来敲打包命令,并在打包命令后面跟一个“--report”选项参数,就会在打包后生成一个报告文件“report.html”,双击这个html文件就能看到打包过程中得情况和问题。

2、通过可视化的UI面板直接查看报告(推荐)
我们可以通过“vue ui”打开vue的可视化面板,在UI面板中,通过控制台和分析面板,可以方便的查看到项目中所存在地问题:


我们可以通过【任务】-【build】编译并压缩模块,点击运行来编译打包该项目,同时最后会生成一个项目报告,我们在【仪表盘】中可以看到:

通过状态总览可以看到编译的状态,以及错误、警告,包括项目资源的大小,其中依赖的占比;


通过速度统计,可以看到我们项目在不同网络状态下的访问速度;


通过资源面板,我们可以看到比较大体积的文件排行,包括其访问速度。
通过依赖项面板,我们看到所有依赖项所占体积的排行。
通过项目报告我们可以看出一下问题:
(1)依赖项占整个项目得体积太大
整个项目2.3MB,而光依赖项就有2.2MB,占比92.97%,这是我们需要优化的点,需要将依赖项缩小一些容量。
(2)项目的打开速度比较慢
上面速度统计面板中我们可以看到,项目打开的平均速度为2.68秒,还是比较慢的,起码要在1秒左右或者更块;
(3)项目部分文件过大,打开比较费资源
上面资源面板中我们可以看到第一个已经标了叹号,“js/chunk-vendors.867b03ab.js”这个文件自己就有1.9M,并且访问速度平均1.88秒;太大的资源文件会在加载网页的时候出现“假死”的现象,所以我们也要优化掉;
(4)项目部分非核心依赖所占体积过大
我们通过依赖项面板可以看出部分依赖项目(例如echart、富文本编辑器quill)所占容量比较大。

而在【分析】中我们可以看到具体的包资源的容量占比情况:

这里会将我们所有打的资源包进行分析,块的大小即为该组件打包后的体积大小,越大的资源所占容量越多。这里也可以看出部分依赖所占体积过大。

四、修改webpack的默认配置准备

我们通过vue.config.js修改webpack的默认配置。
通过vue-cli 3.0工具生成的项目,默认隐藏了所有webpack的配置项,目的是为了屏蔽项目的配置过程,让程序员把工作的重心放到具体功能和业务逻辑的实现上。
我们可以看看我们的项目目录,是没有任何webpack配置文件的:

其实webpack配置文件是被vue-cli隐藏了。如果我们就像对项目得webpack进行自定义配置,我们就需要在项目的根目录中,按需创建vue.config.js配置文件,从而对项目的打包发布过程做自定义的配置(具体配置参考 http://cli.vuejs.org/zh/config/#vue-config-js)。

具体如何配置大家去参考上面的操作链接,我们这里简单说一下, 配置文件中暴露了一个配置对象“module.exports”,该对象里面就可以按照官方文档里的要求进行配置。
那么我们在项目中创建这么一个文件,里面先啥也不配置:

我们即将要往里面配置“开发和正式环境打包入口”、“加载外部CDN资源”等配置,我们下面几篇逐步来去讲解,敬请期待。


参考:黑马程序员(www.itheima.com)Vue项目实战教学视频

转载请注明出处: https://blog.csdn.net/acmman/article/details/126332629

Vue优化】—— Vue项目上线可以做的一些基本优化
柳柳66的博客
04-24 233
前言:优化方法来自掘金作者wangly19的总结博客 开发过程 1、优先使用v-if v-if和v-show理论上都是作用于元素的显示隐藏,只是一个是直接对DOM,一个是通过CSS的display来操作的。 在项目中大部分的时候 都直接使用v-if直接代替使用v-Show 只有当DOM频繁进行显示和隐藏的时候,用v-Show。 (这种场景很少见,比如信息同送优先级中使用,项目中一直通过WebS...
Vue进阶之Vue项目实战(四)
最新发布
qq_34306228的博客
05-29 1125
编辑器 -> 管理端发布上线 ->应用端但是一般很多公司产品的管理端和应用端结合,进行高度复用。这是因为,在管理端进行拖拽的时候,是比较消耗性能的,要更好的考虑性能,所以很多产品都会用 canvas,用画布的形式画、绘制 对齐的网格线,或者编排过程中的辅助线;但是在渲染过程中,在应用端是没有任何的辅助线和网格线,所以一般将管理端和应用端分开考虑。管理端和应用端中间的联系一般是组件的复用,但是在页面中,编排引擎,渲染器方面,他们俩不是高度复用illaretool。
vue-项目完成的项目报告
qq_52347540的博客
03-26 3175
文章目录项目优化1.生成打包报告2.通过vue.config.js修改webpack的默认配置 项目优化 1.生成打包报告 第一种方法:命令行【不推荐】 vue-cli-service bulid --report 第二种方式:vue的可视化UI面板直接查看 在ui面板中查看打包项目,并且进行优化 2.通过vue.config.js修改webpack的默认配置 通过vue-cli 3.0工具生成项目,默认是隐藏了webpack配置项的,目的是为了让工作中心放在业务逻辑上面 然后配置webpa
vue项目打包优化
cyz_hd的博客
09-24 1830
1、首先打vue ui控制面板找到项目文件,点击任务进入之后点击start编译和热更新(用于开发环境)运行这个项目 **2、在没有报警告的情况下,去点击build编译并压缩(用于生产环境)进行打包 ** 3、js/chunk-vendors.bb76b22d.js和element-ui的文件过大所以需要对其进行优化 1.通过 vue-cli 3.0 工具生成项目,默认隐藏了所有 webpack 的配置项,如果程序员有修改 webpack 默认配置的需求,可以在项目根目录中,按需创建 vue.con
前端vue实现导出pdf文件报告组件
走在路上的张先森
03-26 1876
大屏项目有一个需求,需要对展示的内容进行文件导出,但是目前后台没有相关的逻辑,所以只能前端硬上,在参考了其他许多的逻辑之后,目前我自己这边做了一套比较笨的组件,通过拼接标签这种方法来实现对你想需要的地方进行文件导出,并且呈现出比较让人接受的样式,下面以一个实例来介绍。
vue项目开发总结
xjt_1993的博客
11-06 572
从2017年8月30到10月30号,项目开发总结. 1.注意组件的命名,当别人看到组件名称时就能明白这组件的功能.(增加代码的可读性,有利于后期的维护) 2.使用统一的模板. 1)统一使用iview模板,不能将iview模板和vue混合使用.例如:使用iview的里面属性,不要用使用vue里面的属性 2)每个组件里面不能重写iview样式.若是重写样式的话,页面与页面之间的跳转,会改变页面
项目实战手把手教你搭建前后端分离项目 SpringBoot + Vue + Element UI + Mysql(前端)
07-09
在本项目实战中,我们将利用SpringBoot、Vue.js和Element UI以及Mysql数据库来构建一个完整的前后端分离的Web应用程序。这是一个对程序员来说至关重要的技能,不仅能够加深对技术栈的理解,还能为个人职业生涯带来...
Vue项目实战vue.js2.5 饿了么APP(1)概述+项目准备
小陈的博客
05-12 4205
一、概述 1. 项目简介 使用vue.js vue是当前最火的MVVM框架,(优点:轻量、简洁、高效、数据驱动、组件化) 本项目做的是:高仿上线外卖APP商家模块 开发过程:需求分析-脚手架工具-数据mock-架构设计-代码编写-自测-编译打包 以线上生产环境来开发:代码开发及测试环节:UI标注完美还原设计图、以真实外卖APP数据做演示,以保证代码无兼容性问题。 代码规范: (1)架构设计;(2)组件抽象;(3)模块拆分;(4)代码风格统一;(5)JS变量命名规范;(6)CSS代码规范;致力于编写高可维护,
vue2.0实战之使用vue-cli搭建项目(2)
08-31
总结来说,Vue 2.0实战中使用Vue CLI搭建项目包括以下步骤: 1. 安装Node.js和cnpm。 2. 使用cnpm安装Vue CLI。 3. 初始化Vue项目,选择webpack模板。 4. 进入项目目录,安装项目依赖。 5. 启动开发服务器进行开发。...
Vue-第10章 实战项目 - 项目的联调,测试与发布上线
07-29
在本章"Vue-第10章 实战项目 - 项目的联调,测试与发布上线"中,我们将探讨如何在Vue.js开发环境中完成项目的最后阶段,包括联调、测试以及如何将应用部署到线上服务器。这是一系列关键步骤,确保你的Vue应用能够...
vue项目总结和前端学习笔记-06091809.pdf
05-28
看名字就非常清楚,这是一个vue的学习总结,下载门槛很低,给那些希望学VUE,学习可以借鉴的人。里面的内容还是不错的,
VUE项目上线优化
Lifetime的博客
09-11 212
展示进度条 1.安装Nprogress npm install --save nprogress 2.在main.js中导入js和css import Nprogress from 'nprogress' import 'nprogress/nprogress.css' 3.在拦截中展示进度条 Nprogress.start() 4.在response拦截器中隐藏进度条 Nprogress.done() axios.interceptors.response.use(config => {
vue项目总结
qq_45737678的博客
04-16 3577
基于vue2+element-ui的电商后台管理系统项目总结
Vue项目总结
qq_45402495的博客
11-06 434
Vue项目总结 vue生命周期 beforeCreate 初始化实例 不能获取dom节点 created 实例化创建 beforeMount 过渡阶段获取不到具体的dom节点 vue挂载的根节点已经创建 mounted 数据和dom都渲染出来了 beforeUpdate 检测数据更新时,在dom更新之前执行 updated dom更新结束后执行 beforeDestory vue实例销毁之前执行 destoryed 销毁实例后执行 vue双向数据绑定原理 object.definePrope
VUE项目总结
weixin_44229563的博客
12-03 2377
文章目录前言一、依赖记录1.Vue-table-with-tree-gird2.Vue-quill-editor3.lodash4.nprogress5. echarts二、使用步骤总结 前言 最近学习了黑马的Vue项目实战,完成的是一个电商管理系统的项目,这个项目中主要是运用到Element-ui来对UI设计界面,这个文章主要是对自己这段时间的运用到的一些插件的记录以及在这段时间遇到的一些问题。 一、依赖记录 在这次的项目中,运用到一些对于我而言较新的依赖,这些都是可以在Vue-cli脚手架的UI用户界
vue3 + jspdf + echarts 前端生成 pdf报告 预览+下载
qq_42250468的博客
12-27 1254
前端 pdf 生成、预览、下载
写文章

热门文章

  • 【WebLogic使用】1.WebLogic的下载与安装 138335
  • 【Redis缓存机制】1.Redis介绍和使用场景 86853
  • 【OSGI】1.初识OSGI-到底什么是OSGI 74240
  • 【Docker学习总结】8.Docker-查看和删除镜像 55400
  • 【Shiro权限管理】10.Shiro为密码加盐 35454

分类专栏

  • vue入门与实战 95篇
  • Python从入门到进阶 60篇
  • Spring Cloud全面入门学习 41篇
  • MyBatis+SpringMVC 81篇
  • Maven由浅入深 6篇
  • JavaScript的基础与DOM编程 27篇
  • MongoDb探究 9篇
  • osgi经典入门 6篇
  • SSH项目实战 35篇
  • Oracle基础与提高 12篇
  • JSP基础开发技术 37篇
  • Git快速使用和入门 6篇
  • Java虚拟机(JVM)探究 10篇
  • Hibernate框架学习 51篇
  • Java多线程与并发库 19篇
  • Spring框架学习 21篇
  • Struts2框架学习 24篇
  • Java邮件开发 7篇
  • Android开发技术 87篇
  • Shiro权限控制 21篇
  • 蓝桥杯历届试题 31篇
  • Linux全面学习 16篇
  • 手写RPC框架 13篇
  • Redis缓存机制 14篇
  • Spring Boot入门 16篇
  • RabbitMQ消息中间件 13篇
  • ----------------随便说说
  • 杂谈 13篇
  • 技术篇 2篇
  • 算法小总结 9篇
  • ----------------软件开发
  • JAVA基础 6篇
  • Android开发 88篇
  • 网页设计 3篇
  • Hibernate框架 53篇
  • JSP开发 49篇
  • Spring框架 28篇
  • SpringMVC整合MyBatis 52篇
  • SpringMVC 7篇
  • SpringBoot 16篇
  • MyBatis框架 23篇
  • Struts2框架 24篇
  • JavaScript 40篇
  • Ajax 9篇
  • jQuery 3篇
  • Maven 6篇
  • mongodb 9篇
  • OSGI 5篇
  • SQL 16篇
  • WebService 7篇
  • iReport 3篇
  • Dubbo 5篇
  • Zookeeper 3篇
  • Linux 17篇
  • Shiro权限管理 21篇
  • Nginx 4篇
  • Java邮件 7篇
  • javaEE项目实战 71篇
  • Java线程与并发 19篇
  • Activiti工作流 12篇
  • WebLogic 5篇
  • Git版本管理 6篇
  • 设计模式 16篇
  • 缓存机制 14篇
  • Web安全与防御 6篇
  • 软件工程 6篇
  • FreeMarker 4篇
  • 消息中间件 13篇
  • 计算机网络 9篇
  • Netty 7篇
  • FastDFS 6篇
  • JVM 10篇
  • Docker 12篇
  • RPC 13篇
  • Spring Cloud 41篇
  • 全文检索 5篇
  • ----------------算法剖析
  • 程序代码 83篇
  • 蓝桥杯 31篇
  • 第六届河南省程序设计大赛 1篇
  • 北大夏令营笔记 10篇
  • 排序 10篇
  • 数学题 41篇
  • 图论 14篇
  • 贪心 7篇
  • 字典树 3篇
  • 母函数 2篇
  • 高精度 6篇
  • 字符串处理 19篇
  • 模拟 4篇
  • 线段树 4篇
  • 动态规划DP 18篇
  • 计算几何 2篇
  • 数据结构 12篇
  • 搜索 20篇
  • 矩阵 7篇
  • 背包问题 11篇
  • 5篇
  • 博弈论 1篇
  • 并查集 3篇
  • STL 1篇
  • 二分匹配 3篇
  • KMP 1篇
  • 优先队列 3篇
  • 哈夫曼编码 2篇

最新评论

  • 【Python从入门到进阶】39、使用Selenium自动验证滑块登录

    光仔December: 上面“(2)匹配小滑块元素”章节的第一张图,有红框框起来的,你看看同学

  • 【Python从入门到进阶】39、使用Selenium自动验证滑块登录

    weixin_42579270: 新画布宽带和原画布宽度怎么得到的?340 和672

  • 【Python从入门到进阶】63.Pandas如何实现数据的Merge

    CSDN-Ada助手: Python入门 技能树或许可以帮到你:https://edu.csdn.net/skill/python?utm_source=AI_act_python

  • 【VUE项目实战】28.实现添加用户功能(2)-预校验与发起新增请求

    一个人看小丸子: 表情包表情包

  • 【VUE项目实战】28.实现添加用户功能(2)-预校验与发起新增请求

    光仔December: 童鞋,这个系列已经完结了,可以直接看所属专栏的后续文章

大家在看

  • select数据备份和恢复 475
  • 终于整理完了,全网最全JAVA面试八股文总结!
  • JAVA面试题全套新版合集!
  • 运维转行大模型,史上最全总结非常详细,收藏我这一篇就够了
  • MySQL命令行窗口执行update语句,受影响行数为1,但没有得到预期效果

最新文章

  • 【Python从入门到进阶】65、Pandas如何批量拆分与合并Excel文件
  • 【Python从入门到进阶】64、Pandas如何实现数据的Concat合并
  • 【Python从入门到进阶】63.Pandas如何实现数据的Merge
2024年20篇
2023年47篇
2022年51篇
2021年44篇
2020年36篇
2019年49篇
2018年67篇
2017年70篇
2016年120篇
2015年395篇
2014年276篇

目录

目录

分类专栏

目录

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

光仔December

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或 充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值

深圳坪山网站建设公司丛台区网站优化推广优化网站直到云速捷省力如何进行网站性能优化怎么优化自己网站织金网站优化价格郑州网站优化建设公司效果好的网站优化排名漯河优惠网站优化价格兼职网站seo优化网站seo优化推广方案许昌官网网站优化公司潮州首页网站关键词优化多少钱盐城网站优化推广找哪家揭阳网站优化推广岚山网站优化公司如何让网站代码更好的优化龙口智能营销网站优化太原瓷砖行业网站优化推广可靠吗河南咨询网站搭建优化小谈网站优化网站快速优化服务规模大的销售行业网站优化价格优化网站沉醉云速捷力荐如何优化网站首页湛江网站优化对策江门优化网站怎么样网站结构优化中北京西城关键词网站推广优化北京医药网站seo优化南通优化网站怎么收费香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

深圳坪山网站建设公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化