结构化学习 webpack 的使用技巧,探索实践中如何更好地利用 webpack 构建前端开发环境
随着互联网大潮的兴起,web 项目复杂度上升,前端社区蓬勃发展,代码构建已经是前端开发工作中一个绕不开的话题。上图罗列了前端的很多东西,除了一些类库,其他基本都和代码构建有一定的关系。
毋庸置疑,从过去到现在,webpack 一直是前端应用最广泛的代码构建工具,甚至各大前端类库推出的工具支持都是基于 webpack 的基础上定制的。
从 npm package 的下载趋势图看,webpack 的使用量整体趋势一直在上涨,并且伴随着使用量的提升,周边工具和产品也在增多,几乎可以肯定,在未来一段时间内,前端工程师们依旧离不开 webpack,在实际很多项目中,webpack 已经是构建工作的主心骨,使用 webpack 和了解 webpack 已经是前端开发人员必不可少的技能之一。
使用过 webpack 的都了解,webpack 本身具备了诸多优点:从单一入口出发,打包所有前端资源,使用 loader 处理多种代码语言的转换,使用 plugin 扩展原有的模块打包流程,使用 HMR 提升开发体验,利用代码压缩和代码分割来提升前端加载性能等等。
但是,介于 webpack 本身功能就具备一定的复杂性和自由度,webpack 官方文档总是难以面面俱到,也较少去针对某个具体前端构建需求讲述如何使用。同时,webpack 源码的可读性一般,开发者遇见问题时难以开发调试,普遍停留在 webpack 的基础使用上,不敢大刀阔斧地用来定制舒服的开发流程。
我们可以在社区中找到很多关于 webpack 的文章,有不少相当实用的,可以帮助新手快速入门 webpack,也有不少相当深入的,可以从某一层面剖析如何更好地使用 webpack,但总归是零零散散,缺乏一个相对系统化的 webpack 学习指南。
你会学到什么?
- 前端构建的基本知识
- webpack 的基本使用
- 使用 webpack 定制前端开发环境
- 使用 webpack 优化前端资源的加载
- 开发 webpack 的 loader 和 plugin
- 了解 webpack 内部基本的工作流程
- 结合实际项目使用 webpack 的经验
希望你在学完整个小册后,可以做到:
- 了解前端构建,了解构建需求的原因和由来
- 原有的 webpack 构建出问题了,我可以迅速定位解决问题
- 项目构建中需要 xxx,我可以简单调整 webpack 的配置来搞定
- 项目构建流程中需要 xxx,我可以写个 webpack plugin 来实现
- 更好地利用 webpack 的相关资源,高质量高效率地产出前端代码
- 新项目中,我可以自由根据需要使用 webpack 来规范前端构建