Я разделил свой gulpfile.js
на несколько файлов в папке /gulp
, чтобы упорядочить код немного лучше. Но теперь я хочу передать переменную debug (boolean)
в файлы, которые будут включать поведение команды gulp (в конечном итоге я буду использовать аргументы командной строки, но пока я просто хочу заставить ее работать с переменной).
Как я получил эту настройку, используя метод, который я видел в пакете yoman angular/gulp, использует модуль npm под названием require-dir
(который загружает все *.js файлы в /gulp
, где каждый из них имеет набор задач gulp, которые установлены).
gulpfile.js:
var gulp = require('gulp'),
run = require('run-sequence'),
debug = true;
require('require-dir')('./gulp');
gulp.task('default', ['build', 'server', 'watch', '...']);
Что бы загрузило что-то вроде...
gulp/build.js:
var gulp = require('gulp'),
plumber = require('gulp-plumber'),
...;
gulp.task('build', function () {
console.log(debug);
});
Поэтому, когда я запускаю команду gulp
, которая запускает задачу default
, она загружает build.js, а затем выполняет задачу build
gulp. Но, к сожалению, кажется, что debug
возвращает undefined.
Как я могу заставить это работать?
Я искал использование только методов module.exports()
и node require()
, но я не мог понять, как получить задачу gulp внутри включенного файла, чтобы он мог быть запущен из основного файла gulpfile.js
(в желаемой последовательности).
Может ли кто-нибудь помочь? Благодаря