构建工具和任务管理器之间的区别

时间:2017-10-19 20:06:48

标签: webpack gulp gruntjs

我一直在使用构建工具(Gulp / Grunt),主要用于基本的CSS | JS | HTML缩小/格式化/图像优化/观察我的SCSS等变化。

但是Build工具和任务运行器之间到底有什么区别?

1 个答案:

答案 0 :(得分:7)

主要区别在于,顾名思义:

像gulp或grunt这样的 task-runner 用于定义不同的任务,定义它们的调用方式,执行顺序以及它们具有的依赖关系。您可以将几乎任何事物配置为任务,只要 - 在这种情况下 - Node API允许它。

构建工具 bundler (如webpack或汇总)基本上执行单个任务:构建/捆绑。您可以使用插件告诉他们如何完成工作,但您几乎无法控制执行顺序,也无法以任务的方式运行流程的特定子集(例如:仅转换代码但不捆绑) -runner允许。

任务运行者和构建系统/捆绑器是否结合在一起?是的,他们这样做!有些插件可以连接这些系统,例如gulp-webpack。无论如何,您始终可以在任务中使用Node API来执行任何操作。

因此,您可以创建调用天气API的任务,并仅在下雨时运行webpack; - )

如果仍然存在一些混淆,请告诉我,因为我很乐意延长答案。