Gulp 循环配置文件并合并任务...慢
Gulp loop config files and merge task... slow
我正在尝试使用 gulp 和一个 config.json 文件自动执行我的 js 任务,因此我不需要打开 gulpfile.js 而只需要打开配置文件。
我的代码看起来不错并且可以正常工作...但是 Gulp 在 10 秒内完成任务!我正在寻找一种方法来更快地完成任务。
在配置文件中,我想设置不同的 javascript 和自己的 concat 内容。
这是我的 config.json:
的示例部分
"javascript": {
"watchdir": "./assets/js/src",
"files": [{
"basename": "script",
"src" : ["./assets/js/src/jquery-2.1.3.min.js", "./assets/js/src/TweenMax.min.js", "./assets/js/src/imagesloaded.pkgd.min.js", "./assets/js/src/isotope.pkgd.min.js", "./assets/js/src/base.js"],
"dest": "./assets/js"
},
{
"basename": "contact",
"src" : ["./assets/js/src/googlemap.js", "./assets/js/src/contact-form.js"],
"dest": "./assets/js"
}]
},
而且,这是我的 gulp 任务:
/* Scripts task */
gulp.task('scripts', function() {
var tasks = config.paths.javascript.files.map(function(entry){
return gulp.src(entry.src)
.pipe(plumber({errorHandler: onError}))
.pipe(concat(entry.basename + '.js'))
.pipe(rename({basename: entry.basename, suffix: '.min'}))
.pipe(uglify())
.pipe(gulp.dest(entry.dest))
});
return es.merge.apply(null, tasks).pipe(notify('Javascript Compiled and Minified'));
});
还有手表:
// Watch files
gulp.task('default', ['less', 'scripts'], function () {
gulp.watch([config.paths.less.src + '/*.less'], ['less'])
gulp.watch([config.paths.javascript.watchdir + '/*.js'], ['scripts'])
});
运行 Uglify 在已经被 uglfied 的库上是一个巨大的性能杀手。尝试将它们排除在缩小过程之外,这应该会大大加快速度!
+1 使用流数组!!
我正在尝试使用 gulp 和一个 config.json 文件自动执行我的 js 任务,因此我不需要打开 gulpfile.js 而只需要打开配置文件。 我的代码看起来不错并且可以正常工作...但是 Gulp 在 10 秒内完成任务!我正在寻找一种方法来更快地完成任务。
在配置文件中,我想设置不同的 javascript 和自己的 concat 内容。
这是我的 config.json:
的示例部分"javascript": {
"watchdir": "./assets/js/src",
"files": [{
"basename": "script",
"src" : ["./assets/js/src/jquery-2.1.3.min.js", "./assets/js/src/TweenMax.min.js", "./assets/js/src/imagesloaded.pkgd.min.js", "./assets/js/src/isotope.pkgd.min.js", "./assets/js/src/base.js"],
"dest": "./assets/js"
},
{
"basename": "contact",
"src" : ["./assets/js/src/googlemap.js", "./assets/js/src/contact-form.js"],
"dest": "./assets/js"
}]
},
而且,这是我的 gulp 任务:
/* Scripts task */
gulp.task('scripts', function() {
var tasks = config.paths.javascript.files.map(function(entry){
return gulp.src(entry.src)
.pipe(plumber({errorHandler: onError}))
.pipe(concat(entry.basename + '.js'))
.pipe(rename({basename: entry.basename, suffix: '.min'}))
.pipe(uglify())
.pipe(gulp.dest(entry.dest))
});
return es.merge.apply(null, tasks).pipe(notify('Javascript Compiled and Minified'));
});
还有手表:
// Watch files
gulp.task('default', ['less', 'scripts'], function () {
gulp.watch([config.paths.less.src + '/*.less'], ['less'])
gulp.watch([config.paths.javascript.watchdir + '/*.js'], ['scripts'])
});
运行 Uglify 在已经被 uglfied 的库上是一个巨大的性能杀手。尝试将它们排除在缩小过程之外,这应该会大大加快速度!
+1 使用流数组!!