Gulp与webpack有区别吗?如果有,有什么区别?
先来具体看一下它们不同的概念:
(1)Gulp:
Gulp是一个自动化构建工具
,强调的是前端开发的流程,通过配置一系列的task,定义task处理的事物,然后定义执行顺序,来让Gulp执行task,从而构建前端项目的流程,说白了就是用来打包项目。
不管做什么功能,都有一个统一的接口进行管理,必须去注册一个任务,然后去执行,这也是它的特点之一,即“任务化”。
(2)WebPack:
WebPack是一个前端模块化方案
,侧重模块打包,把开发中的所有资源(图片、js文件、css文件等)都看成模块,通过loader(加载器)和plugins(插件)对资源进行处理,打包成符合生产环境部署的前端资源,Gulp也可以配置seajs、requirejs甚至webpack的插件。
它会分析你的项目结构,找到JS模块以及那些浏览器不能够直接运行的扩展语言(如:TypeScript等),然后将其转换和打包为合适的格式供浏览器使用。它最大的优点就是“模块化”
(万物皆模块)。
【总结】
相同点
:
不同点
:
Gulp是构建工具,可以配合各种插件做css.压缩等,解放了双手,实现了自动化。
Gulp严格上讲,它旨在规范前端开发流程,不包括模块化功能。
WebPack是文件打包工具,可把各个项目的css.压缩文件等打包合并成一个或多个文件,主要就是应用于模块化操作。
WebPack更是明显强调模块化开发,而那些文件压缩合并、预处理等功能,只是他附带的功能。
WebPack整合了Gulp的优点,当我们想要一步一步来配置自己的环境时,那么gulp就可以满足我们的需要,但是如果我们想一下就配备大部分我们所需要的环境,那么此时可以选用WebPack,前提是写好package.json。
gulp与webpack上是互补的,还是可替换的,取决于你项目的需求,它们可不存在冲突的关系哈。
Gulp与WebPack可以组合起来使用,以便快速编译(依靠Gulp丰富的组件可以让JS与HTML实现联动,从而控制WebPack应用程序,达到高自动化)
有时间纠结这个,老老实实敲会代码不好吗(^ _ ^)~