在自己的Task中需要一个包是否正确? [咕嘟咕嘟]

时间:2016-11-21 14:52:45

标签: javascript gulp require

我最近开始使用Gulp,我找到了许多不同的Gulpfile.js结构。

最近我使用了类似下面的结构:

/* All requires are in the top of the archive */
var gulp = require('gulp'),
    sass = require('gulp-sass'),
    uglify = require('gulp-uglify'),
    ...;

/* here comes the tasks */

现在我正在使用这样的东西:

gulp.src('css', function() {
   var sass = require('gulp-sass');

   ...
});

gulpfile.js之上堆叠在一起的所有需求之间是否存在差异并且需要在他自己的任务中?表现可能吗?

1 个答案:

答案 0 :(得分:3)

有一个性能优势,因为只有在执行该任务时才需要该模块。好处将在于启动速度,而不在于执行任务本身的速度。

换句话说,在大多数情况下,在您的任务中使用require会更快。

练习通常会建议你的gulpfile.js的可读性,而不是速度。

在这种情况下,速度增益将非常微不足道,您将降低可读性。

当然也有例外,但是你通常会在你的开发机器或CI中运行gulp,而不是在生产中运行,所以启动速度实际上是你可以减少时间并专注于你的代码。