Webpack 等构建工具真正的目的,是为了满足渐进增强的前端设计思想。渐进增强即在确保网站的核心内容和功能在所有的浏览器上都能访问和使用,然后把 css 看做是对样式的增强,js 看做是对 js 增强。

我们的源代码(ES6,React,SCSS)是我们希望实现的最顶层的增强,而输出文件是,希望可以形成”基线兼容 + 渐进加载的形式”。

在初始阶段,webpack 的 entry 定义了我们”增强部分的起点”,target 或者 brwoerlist 配置则是定义我们的基线是什么 --- 我们最低需要兼容到哪个版本的浏览器。

Webpack 会从入口文件开始,查找所有的 import 和 require,弄清所有模块之间的依赖关系,