Экспорт файла задачи в gulpfile.js и запуск в командной строке - PullRequest
0 голосов
/ 03 апреля 2019

(относится к Gulp 4.0 / ES6)

Я хотел бы создать файл задачи, который можно импортировать из основного файла gulpfile.js, а также запускать непосредственно из командной строки, используя gulp (в этом случае даже без ссылки на файл gulpfile.js в командной строке). Это возможно?

Я могу создать файл задания gulp, который можно запустить напрямую:

проблемно-a.js:

const log = require('fancy-log');

function taskA(done){
  // do stuff
  log('Executing task A');
  done();
}

exports.default = taskA;

Запуск из командной строки:

gulp -f task-a.js

[17:53:21] Using gulpfile C:\app\task-a.js
[17:53:21] Starting 'default'...
[17:53:21] Executing task A
[17:53:21] Finished 'default' after 2.73 ms

Хорошо, хорошо выглядит.


Чтобы импортировать в gulpfile.js, мне нужно изменить экспорт в task-a.js на:

проблемно-a.js:

// modified the exports for require()

module.exports taskA;

gulpfile.js:

const taskA = require('./task-a');

gulp.task('default', taskA);

gulp -f gulpfile.js

ОК, это тоже работает.

Но можно ли изменить экспорт в task-a.js, чтобы разрешить как импорт, так и запуск из командной строки с помощью gulp?

1 Ответ

0 голосов
/ 03 апреля 2019

Один способ экспортировать функцию в task-a.js как задачу:

gulp.task('default', taskA);

module.exports = gulp.series('default');

Это гарантирует, что gulpfile.js сможет импортировать функцию как составную операцию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...