vite3打包优化

Vue3之Vite打包优化 1. 安装:2. 配置在vite.config.js中引入 rollup-plugin-visualizer插件3. 查看:包文件目录生成stats.html文件,打开stats.html文件,生成可视化代码分析报告。对于一些较大的第三方库,如 Element UI或 Ant Design,可以考虑按需引入组件或样式,而不是全部引入。按需引入组件或样式可以参考这些第三方库的官方文档,在里面有介绍如何按需引入组件或样式。 阅读详情

打包文件分类

在没有配置之前打包的文件都是一把嗦
在这里插入图片描述

 build: {
    rollupOptions: {
      output: {
        chunkFileNames: 'static/js/[name]-[hash].js',
        entryFileNames: 'static/js/[name]-[hash].js',
        assetFileNames: 'static/[ext]/[name]-[hash].[ext]'
      }
    }
  }

配置之后就会每种类型的文件放在各自的文件夹上(但是包大小还是不变的)
在这里插入图片描述

大文件拆分

打包结束的时候你可能会发现
在这里插入图片描述
意思就是说有些包超过最大的包大小限制500k,你可以设置包大小的上限,但是没卵用。整体的包不会缩小

 build:{
    chunkSizeWarningLimit: 1500,
  }

最好的解决办法就是大文件进行切割

 build: {
    rollupOptions: {
      output: {
        manualChunks(id) {
          if (id.includes('node_modules')) {
            return id.toString().split('node_modules/')[1].split('/')[0].toString()
          }
        }
      }
    }
  }

这样你就会把大的依赖包给单独打包出来。那么你就可以进行针对性的优化了。就像我这里,这两个依赖包都太大了
在这里插入图片描述

接着进行大文件的压缩

 npm i vite-plugin-compression -D
//vite.config.ts
//开启压缩
import viteCompression from 'vite-plugin-compression'

plugins:[  viteCompression({
      verbose: true,
      disable: false,
      threshold: 10240,
      algorithm: 'gzip',
      ext: '.gz'
    })
    ]

此时打开一看你会发现压缩的文件已经生成了

在这里插入图片描述
在这里插入图片描述

那么既然开启了压缩配置,nginx也是需要配合

 server {
        listen       8080;
        server_name  localhost;
        #gzip
        #开启gzip功能
        gzip on; 
        #开启gzip静态压缩功能
        gzip_static on; 
        #gzip缓存大小
        gzip_buffers 4 16k;
        #gzip http版本
        gzip_http_version 1.1;
        #gzip 压缩级别 1-10 
        gzip_comp_level 5;
        #gzip 压缩类型
        gzip_types text/plain application/javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
        # 是否在http header中添加Vary: Accept-Encoding,建议开启
        gzip_vary on;
    }

【Vite】控制Vite打包结构 阅读详情

相关推荐

vite打包优化分片打包依赖包

上述拆分方式是自动将所有的包都单独拆分出来,优点就是不用手动配置,但是也有缺点,就是有的第三方包体积很小,会拆分出大量文件,反而降低请求效率。当项目使用pnpm进行管理包的时候再进行打包就会打出一个非常大的.pnpm包,这就不符合我们的预期了,我们要的就是小一点的包来进行本地缓存。assetFileNames 资源文件名,统一放到assets/js(jpg/png/ttf/css等)/目录下。还不知道怎么解决,目前就是不使用pnpm就恢复正常了,如果有大神知道怎么解决希望能留一下言。

Mr__proto__的博客 4993

vite里的Rollup打包配置

本文介绍了Vite项目中通过build.rollupOptions自定义Rollup打包配置的方法。主要内容包括基础配置中的external(忽略外部依赖)、input(入口文件设置)和output(输出配置),以及进阶配置中的assetFileNames(静态资源命名规则)。文章详细说明了各项参数的取值方式和使用场景,并提供了代码示例,如多入口配置、动态生成入口文件等。还介绍了输出格式(amd/cjs/es/iife/umd/system)的选择和全局变量映射等高级用法,帮助开发者根据项目需求灵活定制打包

青蛙king的博客 9349

vite3+vue3 项目打包优化

现在很多小伙伴都已经使用 Vite + Vue3 开发项目了,如果你是 “前端架构师” 或者是 “团队核心” 的话,不得不可考虑的一个问题就是性能优化。本篇文章主要讲述的是生产环境下 Vite + Vue3 打包优化。

前端知识分享喵 2963

vite常用配置

root 是项目根路径,可以是绝对路径,一般配合fs.strict来限制访问root以外的路径。

梅山老妖的博客 9880

vite3+vue3 项目打包优化二 —— 依赖分包策略

当值为对象形式时,每个属性代表一个 chunk,其中包含列出的模块及其所有依赖。chunk 的名称由对象属性的键决定。})当该选项值为函数形式时,每个被解析的模块都会经过该函数处理。如果函数返回字符串,那么该模块及其所有依赖将被添加到以返回字符串命名的自定义 chunk 中。以下例子,创建一个命名为vendor的 chunk,它包含所有在中的依赖以下例子,将静态资源分拆打包:将 node_modules 中的代码单独打包成一个 JS 文件。

前端知识分享喵 2112

十二、vite配置详解

vite配置详解

张先森的博客 1万+

vue3+vite3项目打包优化

Vue项目开发完毕后,对项目进行打包发布之前,必不可少的操作就是项目优化,这也是程序猿的加分项。跟随本文的脚步来看看如何对项目进行优化吧!

DZQ1223的博客 3191

spoon工具的常用基础操作

先创建一个作业,这个作业流程,包括进行设置变量转换,查询结果输出转换,方便后续循环。整个流程写完后,执行作业5_执行整个流程,成功后,可以在数据库查看结果。,新建一个转换,excel表输入然后复制记录到结果,保存转换文件。这三个用户下 都有一张emp表 分别是 三个部门的用户信息。,新建一个数据库连接,变量命名用户名和密码。成功执行后,可以到保存的excel位置进行查看。emp表输入,可以进行预览查看数据有没有过来。输出到一直excel表,运行结果输出。,新建一个转换,拖拽。

qq_43583887的博客 5831

VUE3项目VITE打包优化

我相信认真看完,还是有收获的,我自己全流程亲测,断断续续花费了我半个月时间,从设想到一步一步拆解实现,然后在生产环境启用,很有收获。文件压缩率高达90%左右 响应速率提升高达85%左右。

kjprime的博客 1284

ChatGPT Web转API工具:原理、部署与集成实战

在AI应用开发中,API(应用程序编程接口)是实现系统间通信和数据交换的核心技术,它通过标准化的请求响应机制,将复杂功能封装为可编程的服务。其工作原理基于HTTP协议,通过定义清晰的端点、方法和数据格式,使不同平台的应用能够高效集成AI能力。这一技术价值在于极大降低了开发门槛,促进了自动化流程和智能功能的快速落地,广泛应用于智能客服、内容生成和创意辅助等场景。本文聚焦于如何通过浏览器自动化技术,将ChatGPT的Web界面能力转化为标准API服务,其中涉及Playwright无头浏览器操作和会话Cookie

weixin_42533910的博客 1766

AI Agent在智能广告投放中的应用

随着互联网的快速发展,广告投放市场变得越来越复杂和竞争激烈。传统的广告投放方式往往难以精准地触达目标受众,导致广告资源的浪费。AI Agent作为一种智能的自动化程序,能够在复杂的环境中自主学习、决策和执行任务。本文章的目的在于深入探讨AI Agent在智能广告投放中的应用,研究如何利用AI Agent提高广告投放的精准度、效率和效果,降低成本。范围涵盖了AI Agent的基本原理、相关算法、在广告投放中的具体应用场景以及实际案例分析等方面。

欢迎来到我的优快云空间!这里聚焦AI大模型应用实战,分享前沿技术、实战案例与开发经验。 617

【VUE】vue3+vite项目打包优化

这几套组合拳打过去,项目体积不小也难,配置过程需要注意配置项位置,有时候配置好了没有效果可以去插件文档里检查下是否放错了位置。

newbalsh的博客 8654

13、基于RBF的自适应鲁棒控制与反步控制方法及实现

本文介绍了基于RBF神经网络的自适应鲁棒控制与反步控制方法,详细阐述了控制系统的程序结构、核心算法及实现流程。通过Simulink搭建仿真系统,利用RBF网络逼近系统中的不确定非线性函数,并结合Lyapunov稳定性理论设计控制律,实现了对倒立摆等复杂非线性系统的高精度跟踪控制。文章还提供了完整的MATLAB/Simulink代码示例和仿真结果分析,验证了该方法的有效性与鲁棒性,为实际工程应用提供了可行的技术路径。

ol789012的博客 88

vue3+vite5 打包优化

​ vue3+vite是目前比较成熟的框架。但是在生产环境还是有很多需要注意的地方。 根据配置 Vite | Vite 官方中文文档官方文档,通过配置。主要可以优化的是打包文件大小,组织,兼容性。

rex0y的专栏 1978

基于FPGA的多通道音频信号采样系统设计

FPGA是随着数字集成电路的发展而逐步演变而来的。从早期的电子管、晶体管、小规模集成电路,到超大规模集成电路(VLSIC),数字集成电路的集成度和性能不断提升。FPGA的出现为系统设计师提供了灵活的设计平台,使其能够在不依赖半导体厂商的情况下快速设计专用集成电路(ASIC)。FPGA具有设计周期短、成本低、开发工具先进等优点,广泛应用于原型设计和产品生产中。VHDL是一种用于描述数字系统的硬件描述语言,其语言形式类似于计算机高级语言,但包含了许多硬件特征语句。

qq_62634009的博客 709

进阶05:Labview与汇川PLC通过OPC UA通信(AM500系列)

本文介绍了LabVIEW与汇川PLC通过OPC UA通信的实现方法。主要内容包括:1)编写汇川AM521 PLC结构化文本程序,配置OPC UA服务器并导出变量;2)使用UaExpert客户端测试读取PLC变量;3)开发C#封装库实现OPC UA连接、读写和订阅功能;4)在LabVIEW中创建通信类,封装dll功能;5)设计LabVIEW界面实现变量读写和PLC程序触发。最终实现了PLC变量监控、数据读写及Y1-Y4输出控制功能,为自动化系统开发提供了基础框架。

weixin_38637405的博客 1302

vue3+vite打包优化

打包压缩通过 vite-plugin-compression 即可,从而减少文件大小,加快页面加载速度。首先,确保你的项目已经安装了 Vite。然后,通过 npm 或 yarn 安装。

2402_86134035的博客 873

Unity3D 加密 Assembly-CSharp.dll (Android平台) 防止反编译

0、加密的原理 Unity3D 是基于 Mono的,我们平时写的 C# 脚本都被编译到了 Assembly-CSharp.dll ,然后 再由 Mono 来加载、解析、然后执行。 Mono 加载 Assembly-CSharp.dll 的时候就是读取文件到内存中,和平时读取一个 游戏资源 文件没什么区别。 为了防止别人破解,我们会对游戏资源加密,简单点的 比如修改文件的一个字节 或者 位移一下

Circle 8720

Vue3打包优化-vite篇

浏览器缓存也称为HTTP缓存,HTTP缓存简单理解就是本地(浏览器)缓存了HTTP响应,以便后续复用,减少向服务端的请求。尤其对于一些静态资源,如图片、JS文件、CSS文件等资源,浏览器端缓存可以极大提升页面的加载速度,不用每次都都全部从服务端下载,也减轻了服务端的压力。在vite.config.js文件中,使用build.rollupOptions.output来配置分包规则。使用import.meta.glob或import.meta.globEager来动态导入模块。

weixin_43867229的博客 1878

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

vite+vue3+ts搭建项目八(打包性能优化三:使用CDN)

解决:importToCDN时在引入vue后添加vue-demi,已在vite.config.ts中给出,其他插件在vue-demi之后(顺序很重要)直接按照下面这张方法是不行的,在vite.config.ts文件中,为importToCDN添加。这样就不需要手动引入了,但是需要添加一个新的npm包,实际项目中可以自行选择是否添加。需要注意的是,css可以使用本地的,使用本地的就不要添加css,输入对应名称,会自动跳转到对应的js文件,复制粘贴,,如上注释所示,其实是不需要的,:网上很多教程,还需要在。

qq_23858785的博客 1万+

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

vue 3.0 + vite项目gzip打包优化

最近自己构建了一个 vite 2.0 + vue 3.2.* 的开源项目,记录一下本次项目进行本地代码打包压缩的优化 手摸手开始优化 什么是gzip 为什么要去优化 如何优化 1. 前端代码配置 代码压缩 服务器配置 ``Failed to load module script: Expected a JavaScript module script but the server responded with a MIME type of “text/html”. St

Marathon_X的博客 1669

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

Vue3 + Vite 打包优化及配置

本文如果有错误和不足之处,欢迎大家在评论区指出,多多提出您宝贵的意见!github地址。

qq_30379395的博客 5711

Vue3之vite打包优化

Vue3之vite打包优化

qq_43225508的博客 7258

【亲测免费】 Vue3 + TypeScript + Vue Router + Pinia + ElementPlus + TS 环境模板搭建及Vite打包优化

Vue3 + TypeScript + Vue Router + Pinia + ElementPlus + TS 环境模板搭建及Vite打包优化 去发现同类优质开源项目:https://gitcode.com/ 项目简介 本仓库提供了一套全面集成Vue3、TypeScript、Vue Router、Pinia(替代Vuex作为状态管理的新选择)、ElementPlus组件库,并结合TypeScr...

gitblog_09758的博客 576
上一篇: vue3+ts遇到的小问题
下一篇: css常见面试题
new money
博客等级 码龄8年 777粉丝 37原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值