iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >如何解决vue项目打包后文件过大问题
  • 853
分享到

如何解决vue项目打包后文件过大问题

2024-04-02 19:04:59 853人浏览 八月长安
摘要

目录为什么打包后文件过大?如何快速解决1.路由懒加载【使用es6提案的import()方式】2.CDN引入为什么打包后文件过大? 移动app项目,使用Vue-cli脚手架搭建,UI主

为什么打包后文件过大?

移动app项目,使用Vue-cli脚手架搭建,UI主要运用的是Muse-UI,开发过程中为满足需求,混入Element-UI部分组件,加之团队开发,前端不止一人参与,在没有统一规范约束的情况下,编码风格和方式都很迥异和…混乱,以致依赖过多,打包时webpack把所有的库都打包在一起,所以vendor.js文件和app.js文件很大,最后出现进入首个页面时会长时间的白屏,影响用户体验。

打包文件过大

在这里插入图片描述

如何快速解决

优化复杂性项目时,只增不减可大大减少风险,bug可控,既保证项目正常运行同时减少不必要的工作量

1.路由懒加载【使用es6提案的import()方式】

未修改前路由引用方式

这里推荐使用es提案的import()方式是因为未修改前路由定义时也时用import的方式引用,若使用vue路由懒加载组件,修改的地方较多,不够快捷。

修改后的路由引用方式

修改后引用方式如图,即:

把import login from '@/views/login/login'修改为

const login = () => import('@/views/login/login')

路由初始化

其他路由配置不需要变动。

2.CDN引入

cdn引入

在 index.html 页面 使用cdn加载依赖

 <link rel="stylesheet" href="https://unpkg.com/muse-ui/dist/muse-ui.CSS" rel="external nofollow" >
 <script src="Https://cdn.bootcss.com/vue-router/3.0.1/vue-router.min.js"></script>
 <script src="https://cdn.bootcss.com/vue/2.5.15/vue.min.js"></script>
 <link rel="stylesheet" href="https://cdn.bootcss.com/material-design-icons/3.0.1/iconfont/material-icons.css" rel="external nofollow" >
 <link href="https://cdn.bootcss.com/element-ui/2.0.7/theme-chalk/index.css" rel="external nofollow"  rel="stylesheet">
 <script src="https://cdn.bootcss.com/Jquery/3.1.0/jquery.js"></script>
 <script src="https://cdn.bootcss.com/echarts/4.2.1-rc1/echarts.js"></script>
 <script src="https://cdn.bootcss.com/qs/6.5.2/qs.min.js"></script>
 <script src="https://cdn.bootcss.com/element-ui/2.0.7/index.js"></script>
 <script src="https://unpkg.com/axiOS/dist/axios.min.js"></script>
 <script src="https://unpkg.com/muse-ui/dist/muse-ui.js"></script>
 <script src="https://cdn.bootcss.com/exif-js/2.3.0/exif.js"></script>

添加 WEBpack.base.conf.js 配置

  externals: {
    'element-ui': 'ELEMENT',
    'vue': 'Vue',
    'querystring':'Qs',
    'vue-router': 'VueRouter',
    'MuseUI': 'MuseUI',
    'axios':'axios',
    'jquery': "jQuery",
    "EXIF":'EXIF',
    'echarts': 'echarts'
  },

main.js

尽可能把在main.js中的引用的依赖用cdn在index.html中引用

开源项目 CDN 加速服务中可以查找到大部分开源库的cdn

这里是不建议在优化已成型项目时直接把main.js中依赖引用部分删掉,如果删掉需要在公共JS中重新引入或者在所需依赖页面中导入,还要注意导入时定义的名称需要跟项目中已存在的依赖引用变量名一致,这将加大自己的工作量,新搭建项目或者想深入学习让代码更纯净者可以去度娘找资料研究哦

这样优化就告一段落了,打包后文件大小如下:

修改后打包文件大小

vendor.***文件大小从1.98M减少至342K

app.***文件大小从573K减少至53.3K

页面加载速度:

页面加载速度

进入首个页面时长从平均13.6S减少至平均1.12S,近乎秒进。

最后对项目使用的图片素材进行压缩处理,修改config/index.js productionSourceMap: false 去除打包时生产.map文件,加快打包速度

以上是我在处理Vue项目打包后文件过大这个问题时的解决方法,希望能帮到大家,也希望大家多多支持编程网。

--结束END--

本文标题: 如何解决vue项目打包后文件过大问题

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

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

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

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

下载Word文档
猜你喜欢
  • 如何解决vue项目打包后文件过大问题
    目录为什么打包后文件过大?如何快速解决1.路由懒加载【使用es6提案的import()方式】2.CDN引入为什么打包后文件过大? 移动app项目,使用vue-cli脚手架搭建,UI主...
    99+
    2024-04-02
  • 怎么解决vue项目打包后文件过大问题
    这篇文章主要讲解了“怎么解决vue项目打包后文件过大问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么解决vue项目打包后文件过大问题”吧!为什么打包后文件过大?移动app项目,使用vu...
    99+
    2023-06-30
  • 如何解决vue-cli项目webpack打包后iconfont文件路径的问题
    这篇文章主要介绍了如何解决vue-cli项目webpack打包后iconfont文件路径的问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。...
    99+
    2024-04-02
  • 如何解决使用vue打包时文件过大的问题
    这篇文章主要为大家展示了“如何解决使用vue打包时文件过大的问题”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何解决使用vue打包时文件过大的问题”这篇文章吧...
    99+
    2024-04-02
  • 如何解决vue打包项目后刷新404的问题
    这篇文章主要介绍了如何解决vue打包项目后刷新404的问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。vue打包项目后刷新404的问题Ng...
    99+
    2024-04-02
  • vue项目打包后浏览器缓存问题如何解决
    本篇内容主要讲解“vue项目打包后浏览器缓存问题如何解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue项目打包后浏览器缓存问题如何解决”吧!vue项目打包后浏览器缓存第一步需要在index...
    99+
    2023-07-05
  • 如何解决vue项目打包后提示图片文件路径错误的问题
    这篇文章主要介绍如何解决vue项目打包后提示图片文件路径错误的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!vue项目打包后在production模式下提示图片 ‘404(not...
    99+
    2024-04-02
  • vue项目打包后浏览器缓存问题及解决
    目录vue项目打包后浏览器缓存vue打包更新后缓存总结vue项目打包后浏览器缓存 1、第一步需要在index.html中添加如下代码: <meta http-equiv="p...
    99+
    2023-03-19
    vue项目打包 vue浏览器缓存 vue缓存问题
  • 前端vue打包项目,如何解决跨域问题
    目录vue打包项目解决跨域vue项目解决跨域(打包上线无需手动切换url)vue打包项目解决跨域 前段时间做一个vue打包成安卓和IOS的App,遇到了跨域问题,直接拿了之前项目的配...
    99+
    2024-04-02
  • 解决java项目jar打包后读取文件失败的问题
    java项目jar打包后读取文件失败 在本地项目读取文件时 this.getClass().getClassLoader().getResource("").getPath()+...
    99+
    2024-04-02
  • vue-cli项目打包后运行文件路径报错如何解决
    今天小编给大家分享一下vue-cli项目打包后运行文件路径报错如何解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。问题:刚...
    99+
    2023-07-04
  • 如何解决vue-cli+iview项目打包上线之后图标不显示问题
    这篇文章主要介绍如何解决vue-cli+iview项目打包上线之后图标不显示问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!做vue项目使用的iviewUI库,打包上线之后发现ic...
    99+
    2024-04-02
  • vue项目打包之后接口出现错误的问题及解决
    目录错误信息关键代码打包前打包后解决方式设置环境变量总结错误信息 这是新建一个项目还原问题,node简单写了个数据返回 关键代码 const express = require('...
    99+
    2024-04-02
  • vue-cli3.0项目打包后如何修改访问后端地址
    目录打包修改访问后端地址问题解决项目打包后直接修改ip地址实现方案1. 方案一2. 方案二3. 方案三打包修改访问后端地址 问题 原本是将访问后台的地址写在代码里面,但是这样的话打包...
    99+
    2024-04-02
  • SpringBoot项目如何打war包问题详解
    目录1、pom.xml配置修改2、pom文件添加如些依赖3、排除springboot内置的tomcat干扰4、改造启动类5、pom文件中不要忘了maven编译插件1、pom.xml配...
    99+
    2024-04-02
  • 如何解决springboot项目打成jar包后运行时碰到的问题
    这篇文章主要介绍了如何解决springboot项目打成jar包后运行时碰到的问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。项目打成jar包后运行时的坑问题我的spring...
    99+
    2023-06-29
  • 用electron打包vue项目中的报错问题及解决
    目录1.  首先一定要cd到项目的根目录2.  接下来运行如何用electron打包vue项目,请参见我的另一篇文章:如何用electron打包vue项目为桌面应...
    99+
    2024-04-02
  • vue中的vendor.js文件过大问题及解决
    目录vue vendor.js文件过大问题1. cdn 引入2. 在使用vue等包的地方,注释掉import引入3. 打包忽视掉vue等包vue打包降低vendors.js文件大小v...
    99+
    2022-11-13
    vue中vendor.js vendor.js文件过大 vue vendor过大
  • pycharm如何打包项目文件
    可以使用三种方法通过 pycharm 打包项目文件:通过 build actions 右键菜单选项打包文件或文件夹;通过 file 菜单中的 "package..." 选项打包;使用 p...
    99+
    2024-04-19
    pycharm
  • 如何解决Vue cli构建及项目打包以及出现的问题
    这篇文章主要介绍了如何解决Vue cli构建及项目打包以及出现的问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1. 首先安装node,推...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作