前端面试题-webpack loader与plugin的区别

webpack的loader专注于文件转化,如将scss转为css,而plugin则扩展webpack功能,涉及打包优化、环境变量设置等。loader在模块加载时预处理,顺序执行;plugin基于事件机制,在整个编译周期中起作用,用于执行更广泛的任务,如压缩、清理。loader转换非js文件为webpack可处理模块,plugin则在webpack执行过程中进行额外处理。
摘要由CSDN通过智能技术生成

两者都是为了扩展webpack的功能而存在的

1. loader只专注与转化文件,完成压缩,打包,语言翻译
plugin不仅只局限在打包,资源的加载上,还可以打包优化和压缩,重新定义环境变量等

2.loader运行在打包文件之前(loader为在模块加载时的预处理器
  plugins在整个编译周期都起作用

3. 一个loader的职责是单一的,只需要完成一种转换,一个loader其实就是一个Node.js模块,当需要调用多个loader去转换一个文件时,每个loader会链式的顺序执行

总结:

对于loader,它是一个转换器,将A文件进行编译形成B文件,这里操作的是文件,比如将A.scss转换为A.css,单纯的文件转换过程

plugin是一个扩展器,它丰富了webpack本身,针对是loader结束后,webpack打包的整个过程,它并不直接操作文件,而是基于事件机制工作,会监听webpack打包过程中的某些节点,执行广泛的任务

loader 把非js文件转换为webpack可以处理的模块

plugin webpack执行过程中(生命周期)额外处理一些事项,压缩,清理,抽出

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值