webpack配置项解读

72 阅读1分钟

ab7b2edc3a8b7c504da145e534846c2.png

entry: webpack构建依赖图的入口文件,可以是数组,可以是对象,也可以是一个字符串的路径,如果是多入口输入,entry必须是对象或者数组。

output:webpack根据入口文件建立依赖图,根据依赖图打包出来的文件(css,js 和一些静态资源等),这里为了让浏览器不加载缓存文件,一般会在文件名上加哈希值。

loader: 任何事物都不是十全十美的,webpack也一样,他只能解析js和json文件,项目中有一些(es6,css,sass,less,vue的模板语法,视频音频文件等,)这些语法比较高级,他不能直接处理,有些大佬就发明了对应的loader,把高级语法转译成低级语法,让webpack能够处理这些文件。注意:loader是有执行顺序,从右至左,从下至上。

resolve:配置模块的相关解析策略(说人话,配置可以省略文件的后缀名,或者是文件路径), 省略文件路径的后缀名 extensions: ['.js', '.vue', '.json'], 省略路径 alias: { 'vue$': 'vue/dist/vue.esm.js', '@': resolve('src') } Plugins:插件,实现扩展功能,辅助做打包构建的工作, mode: 模式设置,一般分为开发模式和生产模式,开发模式代码运行在内存中,生产模式打包到dist文件夹下。一般情况下,根据模式不同,我们会创建不同的配置文件,webpack.prod.js, webpack.dev.js, 生产和开发公共的配置项单独生成一个webpack.base.js文件。

devserver: 开发模式下服务器的一些配置项。端口,域名,热更新,自动打开浏览器等。