webpack配置核心概念
- chunk:指代码块,一个chunk可能由多个模块组合而成,也用于代码合并与分割(这里的合并分割主要指指纹策略的判断),指纹策略简单来说就是文件名后的hash
- bundle:资源经过webpack流程解析编译后最终输出的成果文件(一个.js格式的文件,也就是我们的output文件)
- entry:文件打包的入口,webpack会根据entry递归的去寻找依赖,每个依赖都将被它处理,最后打包到集合文件中
- output:配置打包输出的位置、文件名等
- loader:默认情况下,webpack仅支持js和json文件,通过loader,可以让它解析其他类型的文件。理论上只要有相应的loader,webpack可以处理任何类型的文件
- plugin:loader主要的职责是让webpack认识更多的文件类型,而plugin的职责则是让其可以控制构建流程,从而执行一些特殊的任务。插件的功能非常强大,可以完成各种各样的任务
- mode:目标环境,不用的目标环境会影响webpack打包时的决策
- production:码进行压缩等一系列优化操作
- development:有利于热更新的处理,识别哪个模块变化代
- none:什么都不做,打包时会有提示警告
https://juejin.cn/post/6953042611963691021#heading-13