肉烂在锅里

个人站

我是软件研发中心培训主管,我喜欢看动漫,学习web前端开发。


Webpack-merge混合配置文件

Webpack-merge混合配置文件

一、dev配置和build配置以及common配置分离

开发环境和生产环境的切换需要不断地修改webpack.config.js。

为了方便,我们创建两个版本的配置文件,分别是生产环境下的配置文件和开发环境下的配置文件:webpack.dev.js webpack.prod.js。

在生产环境下可以取消或者更改很多开发环境下的配置。

比如HRM、sourceMap…

然后为了方便的应用配置文件,配置npm快捷脚本:

我们发现,在webpack的两个环境的配置文件中依旧存在很多代码相同的部分,这时候我们可以在创建一个webpack配置文件webpack.common.js。然后将共同的部分写在这个文件之中。

二、webpack.common.js混合

如何将三个配置文件链接起来呢?

需要一个webpack的插件webpack-merge (merge的汉语意思是融入)

下载前先安装

(回顾一下ES MODULE和CommonJS的模块导入导出写法:

https://www.cnblogs.com/lxg0/p/7774094.html

)针对模块引入,我的想法是当我们在一个文件里使用到其他文件模块导出的内容时,那么js就会进入那个模块的所属文件的执行空间进行代码的执行。执行完毕后带着结果回来继续执行本文件的代码。

下面是我的实验:

最后的结果,验证了我的想法是正确的。

PS:这种情况是ES模块打出方法,如果用AMD的module.exports导出方法可能效果就完全不同了。

言归正传,回到webpack的配置文件混合方法:

然后进行下面的操作:

然后混合连接完成,就可以进行打包了。

有些时候我们需要将配置文件移动到其他文件中进行整理:

这时候因为配置文件的位置进行了改变,所以需要修改配置文件的引用路径。

比如文件目录为:

在package.json文件中重新定义npm脚本:

然后就可以正常的执行了。

打赏一个呗

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦