这是我参与「第五届青训营 」伴学笔记创作活动的第 17 天
本节课将聚焦于我们为什么需要学习 Webpack ,Webpack 的本质是什么以及 Webpack 技术优势等相关知识。
最开始,我们要明白一个问题——为什么要学习Webpack?
1.Webpack是什么?
Webpack 是一个前端资源加载/打包工具。它将根据模块的依赖关系进行静态分析,然后将这些模块按照指定的规则生成对应的静态资源。本质上来说就是一个打包器。
站在2023年的角度,成为一个优秀的前端工程师,除了要会写页面样式和动态效果之外,还需要会用主流的单页面框架、Node.js、简单的前端的性能优化等等。加上现在一部分服务器的逻辑移到了前端上,所以实际上前端的复杂度也是提升了很多。
而Webpack可以帮助我们完成一些任务。比如js压缩、css压缩、编译模板文件等等,从而减少前端的工作量。当然,Webpack功能很强大,能帮我们完成的工作远远不止这些。
09年之前,大多数人在完成项目时是需要手工引用许多资源的,这种方式非常低效且容易出错
所以,后来许多工程化工具应运而生
Webpack的本质
其本质上来说就是一个打包器
2.Webpack的技术优势
1.代码拆分 — 形成项目依赖树,每个依赖都可拆分成一个模块,进行按需加载
2.Loader – webpack核心模块之一,主要处理各类型文件编译转换webpack处理模块,babel语法转换
3.智能解析 – 对CommonJS,AMD,CMD等支持性很好
4.Plugin – 强大的插件系统,可实现对代码压缩,分包chunk,模块热替换等,自定义模块,图片base64等,文档非常全面,自动化工作都有直接的解决方案
5.快速高效 – 开发配置可以选择不同环境的配置模式,可选择的打包文件,使用异步 I/O 和多级缓存提高运行效率
6.功能全面 — 最主流的前端模块打包工具,社区全面
总结
本节课我们辨明了Webpack的本质,了解了它是什么以及它的技术优势,同时明确了学习Webpack的重要性