1.入口
告诉webpack该应用从哪个js开始去阅读和查验应用源码,从而进行打包和压缩该部分源码
2.输出
output类似医生针对entry该入口的病人来对症下药,是webpack打包过后的资源文件的路径和名称
3.Loader 组装单元
类似汽车工厂,车身需要组装上灯,组装上轮子才能安全上路,loader就是灯和轮子
希望webpack有对高阶语法的支持时:
es6支持————babelLoader
前端静态资源支持————urlLoader、fileLoader
4.插件
对于loader不能实现的功能,webpack官方提供了插件来解决,插件有一个模板的概念,上图就是把应用源码中需要打包的html这个模板文件也加入打包
loader和插件的区别:
loader是处理js以外的文件,是那些webpack处理不了的文件,因为webpack是js写出来的,所以处理js是很方便的
loader是帮助webpack把js以外的文件处理成webpack可以识别的文件,也就是起到转换格式的作用
插件影响范围更广,能处理更复杂的任务,包括打包 优化到压缩一直到重新定义环境变量
5.模式/兼容性
https://v4.webpack.docschina.org/