Webpack
文章平均质量分 85
Webpack
油墨香^_^
想要敲出漂亮的代码, 就要暴露在全世界的眼睛下!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Vite 打包构建全面优化指南
本文系统介绍了Vite项目打包优化的完整方案。首先通过可视化工具分析包体积,识别性能瓶颈;其次从依赖优化、构建配置、静态资源处理三个维度详细阐述优化措施,包括分包策略、CDN外部化、按需导入、压缩算法选择等;然后针对开发阶段提出HMR优化建议;最后给出完整配置示例和常见问题解决方案。优化后,某电商项目构建时间缩短500%,包体积减少38%。文章强调优化需结合项目特点,建议采用渐进式优化策略并持续监控效果,同时关注Vite生态发展趋势。原创 2023-01-14 16:45:56 · 754 阅读 · 0 评论 -
浅析webpack5中Compiler中重要的hook调用过程
摘要:Webpack5构建过程通过Compiler核心钩子实现,主要分为三个阶段:初始化阶段触发beforeRun和run钩子;编译阶段依次触发beforeCompile、compile、thisCompilation、compilation和make钩子,完成模块构建和依赖解析;输出阶段通过emit、afterEmit和done钩子处理资源输出。理解这些钩子的触发顺序和功能对掌握Webpack原理、调试配置和开发插件至关重要。原创 2023-03-16 10:03:46 · 820 阅读 · 0 评论 -
Webpack中各种环境变量的正确姿势
文章摘要:本文探讨了Webpack中环境变量的使用方式。通过webpack.DefinePlugin插件可在业务代码中注入全局变量,但需注意使用JSON.stringify()处理字符串替换。在构建过程中,可通过--env参数或传统方式(如cross-env)注入环境变量,前者需将配置导出为函数形式,后者可直接通过process.env访问。两种方式各有利弊,根据实际需求选择适合的方案能有效支持前端工程化建设。原创 2023-03-27 09:38:11 · 1808 阅读 · 0 评论 -
vite 性能优化方案
Vite项目优化指南:从开发到生产全流程提速方案 本文提供了一套完整的Vite项目优化方案,涵盖开发和生产环境的配置技巧。开发优化包括依赖预构建、文件监听和热更新配置;生产构建涉及代码分割、TreeShaking和资源压缩;静态资源优化包含图片/字体处理;高级技巧介绍了按需加载、CDN引入和预加载策略;还提供了分析工具、环境特定配置和实用插件推荐。通过实施这些优化措施,可显著提升项目构建速度和运行性能。原创 2025-10-15 15:29:25 · 208 阅读 · 0 评论 -
Webpack 性能优化方案
本文系统介绍了Webpack打包优化的全流程方案。从构建速度优化(开发环境使用DllPlugin预编译、缓存配置,生产环境采用多进程压缩)到输出质量优化(代码分割、资源压缩、缓存策略),再到运行时性能优化(TreeShaking、ScopeHoisting)和监控分析工具配置。通过图表对比显示,优化措施可显著提升构建效率(减少40-70%构建时间)和降低打包体积(减少20-60%)。文章提供了完整的配置示例和优化效果评估,帮助开发者根据项目需求选择合适的优化方案。原创 2025-10-15 15:20:39 · 304 阅读 · 0 评论 -
「高级前端性能优化」手册
本文系统介绍了Web性能优化的关键策略,涵盖性能指标监控、代码/框架级优化、资源加载优化、构建配置、缓存策略及网络层优化等方面。核心包括:1) 监控FP、FCP等关键性能指标;2) 算法优化、防抖节流、虚拟滚动等代码级优化;3) React框架的memo、懒加载等优化技巧;4) 图片懒加载、资源预加载策略;5) Webpack构建优化和缓存配置。文章还提供了HTTP/2、CDN等网络优化方案,以及性能监控和持续改进方法,并列出必须优化项和高级优化项检查清单,强调性能优化是需持续迭代的过程。原创 2025-10-12 11:38:58 · 711 阅读 · 0 评论 -
Vite插件方案,用于自动打包压缩图片和转换为WebP格式
本文介绍了三种Vite图片优化方案:1.使用现成插件组合(vite-plugin-imagemin+vite-plugin-webp)实现图片压缩和WebP转换;2.自定义插件方案,通过sharp库实现更灵活的图片处理;3.完整的优化方案,支持多种格式转换(WebP/AVIF)、尺寸调整等功能。每种方案都提供了详细的配置说明和使用示例,开发者可根据项目需求选择不同级别的优化方案,平衡图片质量与性能。原创 2025-10-12 11:08:18 · 214 阅读 · 0 评论 -
Vite打包优化实践指南
本文详细介绍了Vite打包优化的完整方案。主要内容包括:1.使用可视化工具分析打包产物;2.代码分割策略(手动分包和路由动态分割);3.依赖优化(预构建和CDN引入);4.资源压缩与优化(图片压缩和代码压缩);5.缓存优化策略(文件哈希和ServiceWorker);6.高级技巧(TreeShaking、异步组件优化和预加载);7.性能监控与分析。通过这些优化手段,可显著提升Vite应用的构建性能和运行时性能,包括减少打包体积、加快加载速度、优化资源利用等。文章最后提供了完整的配置示例,帮助开发者快速实现优原创 2025-10-12 11:01:28 · 249 阅读 · 0 评论 -
从零搭建企业级研发环境:GitLab CI/CD实战指南
本文详细介绍了企业级GitLab CI/CD环境的完整搭建方案,包括:1)基础设施规划,涵盖服务器、Runner集群、容器仓库等组件;2)GitLab安装与安全配置;3)Runner集群搭建与多环境配置;4)前后端项目CI/CD流水线设计模板;5)高级功能如多环境部署、安全扫描等;6)自动化部署脚本;7)监控告警配置;8)性能优化与安全最佳实践。该方案提供了从代码提交到生产部署的完整自动化流程,支持开发、测试和生产多环境管理,并强调安全性和可扩展性,适合中大型企业落地DevOps实践。原创 2025-10-11 11:17:59 · 310 阅读 · 0 评论 -
前端性能优化完整指南
本文总结了前端性能优化的关键技术方案,主要包括:1)代码拆分与懒加载,通过React/Vue的动态导入和Webpack配置实现按需加载;2)资源优化,包括图片懒加载、现代格式转换和压缩;3)CSS关键路径提取与压缩;4)JavaScript执行优化策略;5)缓存与离线方案实现;6)构建工具配置优化;7)性能监控体系搭建;8)CDN与网络优化技术。文章建议采用渐进式优化策略,优先处理核心指标(LCP、FID、CLS),从影响最大的优化点入手,并建立持续的性能监控体系。原创 2025-10-11 11:03:09 · 311 阅读 · 0 评论 -
Vue 自动化部署脚本教程(node/Shell/CI/CD 工具)
本文介绍了三种自动化部署前端Vue项目的方案:1)基于Node.js的脚本方案,通过scp2/node-ssh等库实现文件传输和远程命令执行;2)Shell脚本方案,使用sshpass/scp命令实现自动化部署;3)GitHub Actions的CI/CD方案。所有方案都支持多环境配置、构建压缩、远程部署和权限控制,并提供了安全建议。通过配置package.json脚本,开发者可以快速运行不同环境的部署命令,显著提升部署效率并减少人为错误。原创 2025-10-11 10:49:20 · 281 阅读 · 0 评论 -
Webpack 性能优化方案
本文全面介绍了Webpack性能优化的核心策略,涵盖构建速度优化、打包体积优化、开发体验优化和高级技巧。主要方法包括:1)通过缓存、多进程、DLL预编译加速构建;2)采用代码分割、TreeShaking和资源压缩减少体积;3)优化热更新和SourceMap提升开发体验;4)运用模块联邦、预加载等高级特性。文章还提供了生产/开发环境的差异配置建议,以及构建监控和分析工具的使用方法,帮助开发者根据项目需求制定最佳优化方案,在构建速度与输出质量间取得平衡。原创 2025-10-10 20:07:30 · 381 阅读 · 0 评论 -
Spring Boot集成Apollo配置中心指南
本文介绍了携程开源的分布式配置中心Apollo及其在SpringBoot项目中的集成使用。主要内容包括:1)Apollo快速启动方法;2)SpringBoot集成步骤(添加依赖、配置、启动类);3)基本使用方式(代码配置、监听变更);4)高级功能(多环境配置、公共命名空间);5)最佳实践(配置分类、安全规范);6)常见问题排查。通过完整示例展示了如何实现配置管理、自动刷新等功能,为应用配置集中化管理提供了完整解决方案。原创 2024-08-20 17:20:55 · 1017 阅读 · 0 评论 -
vite为什么比webpack快,追问了为什么webpack不基于esmodule
总之,Vite之所以比Webpack快,主要是因为其采用了不同的构建机制和优化策略,特别是利用了现代浏览器对ES Module的原生支持和按需编译的策略。而Webpack的设计初衷和历史背景决定了它需要进行一定程度的打包和转换工作,以适应不同的构建需求和环境。随着ES Module的普及和浏览器对其原生支持的增强,Webpack也在不断更新和优化,以更好地支持ES Module。然而,Webpack的设计和架构决定了它仍然需要进行一定程度的打包和转换工作,以确保代码能够在不同的环境中正确运行。原创 2024-08-12 09:01:46 · 544 阅读 · 0 评论 -
webpack如何处理不同类型的文件
Webpack 是一个静态模块打包器,它通过分析项目的文件依赖关系,然后生成一组包含所有文件和依赖的“打包文件”。Webpack 本身主要理解 JavaScript,但通过各种加载器(loader)和资源模块(asset module),它能够处理多种不同类型的文件。原创 2024-08-09 10:44:24 · 364 阅读 · 0 评论 -
webpack打包过程
Webpack的打包过程是一个复杂但高度可配置的过程,它能够将多个JavaScript、CSS、图片等资源文件打包成一个或多个bundle文件,以便在浏览器中快速加载。此外,Webpack的打包性能也受到多种因素的影响,如项目规模、资源数量、插件和加载器的使用等。因此,在实际开发中,需要根据项目情况合理配置Webpack,以优化打包性能和结果。需要注意的是,Webpack的打包过程是高度可配置的,开发人员可以通过修改配置文件和编写自定义插件来扩展Webpack的功能,以满足不同项目的需求。原创 2024-08-09 10:41:39 · 648 阅读 · 0 评论 -
谈谈Webpack5性能优化
请注意,以上优化策略并非全部,具体使用时还需根据项目的实际情况和需求进行选择和调整。同时,请注意在优化过程中保持代码的可读性和可维护性。Webpack 5 提供了多种性能优化手段,旨在提高构建速度和减少最终产物的大小。原创 2024-08-06 16:25:20 · 449 阅读 · 0 评论 -
12道性能优化的问题
懒加载是一种延迟加载技术,指在需要使用某个对象或数据时才进行加载,而不是在系统启动或页面加载时就立即加载。这种技术可以应用于图片、视频、音频、数据库查询、代码模块等多种资源类型1234。异步加载:重点在于资源的加载和执行是并行的,不会阻塞页面渲染,但资源的执行顺序是不确定的。延迟加载:重点在于资源的按需加载,即在需要时才加载资源,以减少初始加载时间。对于脚本来说,虽然延迟加载的脚本不会阻塞页面解析,但它们会在页面解析完成后按顺序执行(如果使用defer属性)。原创 2024-08-06 16:05:39 · 842 阅读 · 0 评论 -
前端性能优化全面指南
前端页面性能优化指南摘要 本文系统介绍了前端性能优化的关键技术,涵盖以下核心内容: 关键渲染路径优化:解析构建DOM/CSSOM、渲染树、布局和绘制的关键步骤,强调内联关键CSS、异步加载非关键资源。 资源优化:图片采用WebP/AVIF格式压缩,实施懒加载和响应式方案;通过代码分割(Webpack动态import/React.lazy)按需加载。 缓存策略:合理配置HTTP强缓存与协商缓存,结合Service Worker实现离线可用,对静态资源设置长期缓存。 网络层优化:减少HTTP请求(合并文件/雪碧原创 2024-08-06 10:37:59 · 557 阅读 · 0 评论 -
修改NPM包部分功能的多种方法
NPM包功能修改的5种方法:1.Fork并修改源码(彻底但维护成本高);2.使用patch-package生成补丁(推荐,适合小修改);3.创建包装器扩展功能(非侵入式);4.在Monorepo中直接修改;5.提交PR给原仓库(适合通用修改)。最佳实践建议优先使用patch-package或包装器模式,保持修改记录并定期检查原包更新。patch-package提供最便捷的修改方案,完整流程包括安装工具、修改代码、生成补丁和提交记录。原创 2024-08-06 10:37:42 · 812 阅读 · 0 评论 -
前端项目路径别名终极解决方案
因此,使用相对路径导入可能会变得更长且更混乱,这可能会对代码的外观产生负面影响,并让辨识代码的来源变得更加困难,更加重要的是代码文件位置变动相对路径就得改变。路径别名固然是非常好,但是在项目中却需要在多处指定,即使你的项目足够简单,只要用了 TypeScript 本上也需要指定两次。此外,这种方法允许使用别名而不需要构建步骤,重要的是。使用路径别名即绝对路径导入,不仅解决了理解导入路径的问题,而且还简化了重构期间代码移动的过程,美丽且直观。代码导航和自动完成编辑器默认支持,而不需要任何额外的设置。转载 2024-08-01 14:30:39 · 123 阅读 · 0 评论 -
webpack
webpack-dev-server/client 传给它的信息以及 dev-server 的配。步,主要是 dev-server 的中间件 webpack- dev-middleware。webpack-dev-server/client 端并不能够请求更新的代码,也不会执。和 webpack 之间的交互,webpack-dev-middleware 调。在 Webpack 中,loader 的执行顺序是从右向左执行的。步是 webpack-dev-server 和 webpack 之间的接。原创 2024-07-17 15:37:05 · 789 阅读 · 0 评论 -
有哪些常⻅的 Loader?
uglifyjs-webpack-plugin:通过 UglifyES 压缩 ES6 代码。webpack-parallel-uglify-plugin: 多核压缩,提。source-map-loader:加载额外的 Source Map。mini-css-extract-plugin: CSS 提取到单独的。url-loader:和 file-loader 类似,但是能在。html-webpack-plugin:简化 html。css-loader:加载 CSS,file-loader:把。原创 2024-07-17 15:35:57 · 321 阅读 · 0 评论 -
webpack、rollup、parcel 优劣?
于基础库的打包,如 vue、d3 等: Rollup 就是将各个模。程度上降低代码体积,但是rollup没有webpack如此多的的。个参数,这个参数是模块对象,键为各个模块的路径,件中,并且通过 Tree-shaking 来删除。型复杂的前端站点构建: webpack 有强。级功能,其更聚焦于库的打包,因此更适。函数内部则处理模块之间的引。如代码分割、按需加载等。态差、报错信息不够全。原创 2024-07-17 15:35:21 · 203 阅读 · 0 评论 -
webpack 与 grunt、gulp 的不同?
替 Grunt、Gulp,npm script 同样可以打造任务流。赖关系图 (dependency graph),其中包含应。切当成模块,当 webpack 处理应。Grunt、Gulp 是基于任务运。线,把资源放上去然后通过不同插件进。Webpack 是基于模块化打包的。动化处理模块,webpack 把。个或多个 bundle。npm script 代。跃的社区,丰富的插件,能。然后将所有这些模块打包成。程序时,它会递归地构建。程序需要的每个模块,因此这是完全不同的两类。原创 2024-07-17 15:34:38 · 147 阅读 · 0 评论 -
如何提⾼webpack 的构建速度?
webpack-uglify-parallel 来提升 uglifyPlugin 的压缩速 度。DllPlugin 和 DllReferencePlugin 预编译资源模块 通过 DllPlugin 来对那些我们引⽤。预 编译,再通过 DllReferencePlugin 将预编译的模块加载进来。Tree-shaking 和 Scope Hoisting 来剔除多余代码。CommonsChunkPlugin 来提取公共代码。2.通过 externals 配置来提取常。但绝对不会修改的 npm 包来进。原创 2024-07-17 15:34:01 · 145 阅读 · 0 评论 -
[Vite 进阶] 配置环境变量(包含多工程、多环境配置)
同理运行yarn dev:wc2,将会打印出.env.wc2,.env.wc2.development,.env.wc2.production中的环境变量。同理新建env/.env.wc2,env/.env.wc2.development,env/.env.wc2.production三个文件,分别对应着项目2默认配置,项目2开发环境配置,项目2生产环境配置。它由base 配置项决定。优先级:.env.development || .env.production > .env.local > .env。转载 2024-05-31 09:19:41 · 1405 阅读 · 0 评论 -
推荐Node.js版本管理工具
摘要:推荐几款比nvm更优的Node.js版本管理工具:Volta(自动切换版本,适合团队协作)、fnm(速度快、轻量级)、n(极简主义,仅macOS/Linux)。根据需求选择:Volta高效协作,fnm极速简洁,n简单易用。迁移时需清理现有版本、备份重装、检查环境变量。原创 2024-05-30 08:50:21 · 451 阅读 · 0 评论 -
深度剖析 Vite 配置文件
因为配置文件代码可能会有第三方库的依赖,所以当第三方库依赖的代码更改时,Vite 可以通过 HMR 处理逻辑中记录的 configFileDependencies 检测到更改,再重启 DevServer ,来保证当前生效的配置永远是最新的。不过,后面 Vite 还会处理一些边界情况,在用户配置不合理的时候,给用户对应的提示。其次,在加载配置文件的过程中,Vite 需要处理四种类型的配置文件,其中对于 ESM 和 CommonJS 两种格式的 TS 文件,分别采用了AOT和JIT两种编译技术实现了配置加载。转载 2024-05-29 09:08:11 · 230 阅读 · 0 评论 -
TS基础语法总结
本文全面介绍了TypeScript的核心知识点,包括基础类型(原始类型、数组、元组、枚举)、类型操作(extends、in、keyof等)、类型守卫、类型断言、接口与类、函数与泛型、高级类型(条件类型、映射类型等)、内置工具类型、声明文件等。重点讲解了类型系统特性如联合/交叉类型、类型推断、模板字面量类型,以及面向对象编程的类与接口实现。同时涵盖了实用功能如类型守卫、泛型约束、声明合并等,并提供了丰富的代码示例。这份指南系统梳理了TypeScript从基础到高级的所有关键概念,可作为学习和实践的完整参考手册原创 2024-05-28 10:07:23 · 812 阅读 · 0 评论 -
[特殊字符] Webpack 5 核心概念与项目搭建指南
本文详细介绍了Webpack5的核心概念和使用方法,并手把手指导搭建Webpack5+React+TypeScript项目。主要内容包括: Webpack5核心概念解析:入口、输出、加载器、插件和模式等基础概念。 Webpack5完整打包流程:从初始化配置到资源输出的完整生命周期。 项目搭建实操: 项目初始化与依赖安装 配置文件设置(基础配置、开发/生产环境配置) TypeScript配置 项目源码结构搭建 关键优化提示:路径解析、SourceMap、热更新、Babel缓存等性能优化技巧。 通过本文,读者可原创 2024-05-28 09:53:24 · 1217 阅读 · 0 评论 -
webpack5详细教程(5.68.0版本)
(2)配置:通过DefinePlugin实现新建 config/dev.env.js。原创 2024-05-27 08:56:06 · 1534 阅读 · 1 评论 -
深度剖析 Vite 配置文件:从入门到精通
Vite是一款新型前端构建工具,通过原生ES模块开发服务器和Rollup构建指令,显著提升开发体验。其核心优势在于基于ES Modules的按需服务,实现毫秒级冷启动速度,并利用ESBuild进行超快依赖预构建。配置文件支持JS/TS格式,提供智能提示和情景配置功能。关键配置包括模块解析、开发服务器、环境变量处理、构建优化等。Vite还提供强大的插件系统,支持CSS预处理、静态资源处理和全局常量定义。安全方面建议限制文件系统访问并使用最新版本。性能优化可通过依赖预构建和代码分割实现。Vite凭借其合理默认配原创 2024-05-22 09:24:50 · 1081 阅读 · 0 评论 -
Vite安装与使用指南
Vite是一款现代化前端构建工具,具有快速冷启动和高效热更新特性。它利用浏览器原生ES模块实现闪电般开发体验,生产环境使用Rollup构建优化资源。安装时推荐通过npm create vite@latest创建项目,支持多种框架模板。项目结构以index.html为入口,配置通过vite.config.js管理,支持环境变量和模式区分。Vite提供丰富的插件生态、TypeScript原生支持和CSS预处理器集成,部署适配主流平台。其创新架构显著提升了前端开发效率,是传统打包工具的优秀替代方案。原创 2024-05-10 08:42:42 · 2638 阅读 · 0 评论 -
Webpack与Gulp详细解析
本文系统介绍了Webpack和Gulp两大前端构建工具的核心概念与区别。Webpack是模块化打包工具,支持代码分割、懒加载和各类资源转换,适合单页应用开发;Gulp侧重任务自动化流程控制,适用于传统网站构建。文章详细对比了两者的设计理念、工作原理和适用场景,并提供了Webpack路由懒加载的实现方案、常用插件列表以及底层实现机制。同时介绍了Rollup、Parcel等其他打包工具的特点,帮助开发者根据项目需求选择合适的构建方案。原创 2024-05-09 16:50:32 · 844 阅读 · 0 评论 -
Webpack公共模块提取与优化配置
本文介绍了Webpack的核心配置与优化技巧,包括:1)使用splitChunks提取公共模块;2)常见Loader配置(Babel、CSS、Sass等);3)Babel实现与缓存配置;4)基础配置项说明;5)8种优化手段(代码分割、懒加载、Tree Shaking等);6)常见打包问题解决方法;7)Loader与Plugin的区别;8)本地开发跨域解决方案;9)打包体积优化策略。内容涵盖Webpack从基础到进阶的关键知识点,为前端工程化提供了实用指南。原创 2024-05-09 16:50:12 · 809 阅读 · 0 评论 -
Webpack Tree Shaking 深度解析:从原理到实践
TreeShaking是一种通过静态分析移除JavaScript未引用代码的优化技术。它基于ES6模块的静态特性,在编译时分析模块依赖关系,识别并消除未被使用的导出代码。Webpack通过三个阶段实现TreeShaking:依赖收集与标记、未使用代码识别和代码消除。关键配置包括:设置production模式、开启usedExports、正确声明sideEffects。最佳实践包括:使用ES6模块语法、避免模块顶层副作用、按需导入第三方库。Babel需配置modules:false保留ES6模块语法,pack原创 2024-05-09 11:55:23 · 1165 阅读 · 0 评论 -
Vite 打包 chunk 优化
同时,通过这次优化,也告诉我们在开发 JS 模块的时候要尽量避免模块副作用,将模块级别中的函数调用比如模块的初始化等,交给模块的使用方来做。这样的后果是 Vite 构建出来的文件数量更多,而 Webpack 构建出来的代码量更多(重复代码加上 Webpack 运行时的代码)。但是,用 Webpack(5.41.0)构建出来只有三个文件(index,a,b),其中 a 和 b 中都有 c 的代码。可以看到,a b c 的代码都合并到了一个 chunk 中,看来这个问题就这么简单的搞定了!但是可以当做纯函数。转载 2023-08-09 09:38:36 · 1299 阅读 · 0 评论 -
Vite 7 正式版发布,全面拥抱 Lightning CSS
Vite7启用LightningCSS指南:在vite.config.ts中配置css.transformer和build.cssMinify为'lightningcss',并设置目标浏览器范围。LightningCSS采用Rust编写,提供极速CSS处理、现代语法支持和智能压缩。相比默认PostCSS方案,性能更高但需注意特殊插件(如TailwindCSS)的兼容性,建议通过browserslist配置浏览器支持范围。(98字)原创 2023-09-14 16:51:55 · 377 阅读 · 0 评论 -
webpack详解
摘要:JavaScript的主线程执行机制与浏览器渲染流程紧密相关。事件循环按宏任务→微任务→渲染的顺序执行,若任务耗时超过50ms会延迟渲染导致卡顿。优化策略包括:分解长任务为异步块、合理使用微/宏任务、用requestAnimationFrame处理动画、将复杂计算交给WebWorker。关键要避免主线程阻塞,确保浏览器能按时渲染(通常每16.7ms),通过任务调度和性能监控保持页面流畅性。原创 2023-03-30 10:21:43 · 259 阅读 · 0 评论
分享