Javascript 一口任务文件pr主题
想知道实现这一目标的最佳方式是什么 我的web应用程序中有多个主题,比如:Javascript 一口任务文件pr主题,javascript,gulp,gulp-watch,Javascript,Gulp,Gulp Watch,想知道实现这一目标的最佳方式是什么 我的web应用程序中有多个主题,比如: /themes/theme_one/ /themes/theme_two/ … etc. 我不想写一个大的文件来处理所有这些。相反,我希望能够编写gulptheme\u one,并自动运行与该主题相关的所有gulp任务 我已经意识到我真正做的是为gulp创建一个快捷方式--gulpfile themes/theme_one/gulpfile.js 我在想一个根Gulpfile.js是这样的: var gulp =
/themes/theme_one/
/themes/theme_two/
… etc.
我不想写一个大的文件来处理所有这些。相反,我希望能够编写gulptheme\u one
,并自动运行与该主题相关的所有gulp任务
我已经意识到我真正做的是为gulp创建一个快捷方式--gulpfile themes/theme_one/gulpfile.js
我在想一个根Gulpfile.js是这样的:
var gulp = require('gulp');
var themes = ['theme_one', 'theme_two', 'theme_three'];
themes.forEach(function(theme){
gulp.task(theme, function(){
require(__dirname+'/themes/'+theme+'/gulp-tasks.js');
gulp.run('default'); // all theme gulpfiles need a default task
});
});
我看那个gulp.run是不受欢迎的。我应该如何重新构造它以避免使用gulp.run?您不必使用gulp来运行各种gulp任务,您只需执行
cd主题/theme\u one/&&gulp
或编写一个程序即可,而无需使用gulp
var path = require('path');
var process = require('child_process');
var themeDir = process.args[0] || 'theme_one';
var directory = path.join(__dirname + '/themes/' + themeDir);
process.exec('cd ' + directory + ' && gulp', function(err, stdout, stderr) {
if (err) {
console.log(stderr);
console.log('err');
} else {
console.log(stdout);
}
});
因此,您可以使用节点索引主题\u two
对每个主题使用一个“吞咽”任务来运行此任务
您可以编写gulpfile,并为您想要的每个进程使用一个任务
例如:
//安装程序需要。。。
吞咽任务('theme_1',函数(){
return gulp.src('/theme/1/*/**'))
.pipe(zip('theme_1.zip'))
.pipe(大口目的地('dist'));
});
吞咽任务('theme_2',函数(){
return gulp.src('/theme/2/*/**'))
.pipe(zip('theme_2.zip'))
.pipe(大口目的地('dist'));
});
吞咽任务('default'、['theme_1'、'theme_2']);
只需键入以下内容,即可运行主题任务:
gulp theme_1
// or
gulp theme_2
默认情况下,只需键入gulp