Gulp - 如何变得懒惰,'make'式建筑?

时间:2016-02-11 14:10:31

标签: css node.js makefile gulp less

我正在使用gulp进行css和js处理。有时我错过了unix make命令的旧懒惰:

  • 仅从原始文件中生成已经实际更改的已转换(无论如何,例如编译)文件(基于时间戳)。

  • 从第1阶段到第2阶段(.cpp - > .o),第2阶段到第3阶段(链接或其他内容),无论你的依赖图是什么,都是如此......

制作不仅限于源代码:您可以通过几个步骤进行图像处理(例如,有效地“懒惰”生成缩小尺寸的拇指)或其他许多步骤。所有这些都基于相当简单的规则:“至少是一个与当前输出文件相关的新文件源?”

与gulp不同,每一步都会生成(或多或少是临时的)文件,而不是连续的管道。

有没有办法,在gulp **中获得同样的懒惰,即在生成css时?

  • 只转换那些(少量|手写笔)文件,如果发生了变化(在相应的文件上)
  • 同样用于添加浏览器前缀,concat,minify

不可否认,在前1或2步之后,输出很可能已经是单个流。所以任何改变都意味着'触动'。尽管如此,当使用minify选项进行游戏时,我宁愿对早期的变换,前缀和连续阶段(从临时文件中绘制先前结果)保持懒惰。也在javascript端(typeScript,...)

如果我理解正确的话,

lazypipegulp-cache听起来很诱人,但却是另一回事。在第一阶段说.watch()也只是部分答案。

是否有更通用的方法?

1 个答案:

答案 0 :(得分:-1)

如果你开始使用Gulp,那么this似乎就是这样做的。它涉及 gulp-cached gulp-remember 插件。