#
JavaScript и GulpfilesGulp позволяет вам использовать существующие знания JavaScript для написания файлов gulp или использовать ваш опыт работы с gulpfiles для написания простого JavaScript. Хотя для упрощения работы с файловой системой и командной строкой предоставляется несколько утилит, все остальное, что вы пишете, является чистым JavaScript.
#
Объяснение GulpfileGulpfile - это файл в каталоге вашего проекта под названием gulpfile.js
(или с заглавной буквы Gulpfile.js
, например Makefile), который автоматически загружается при запуске команды gulp
. В этом файле вы часто будете видеть API-интерфейсы gulp, такие как src()
, dest()
, series()
или parallel()
, но можно использовать любые стандартные модули JavaScript или Node. Любые экспортированные функции будут зарегистрированы в системе задач gulp.
#
ТранспиляцияВы можете написать gulpfile, используя язык, требующий транспиляции, например TypeScript или Babel, изменив расширение в вашем gulpfile.js
, указав язык, и установив соответствующий модуль транспилятора.
- Для TypeScript переименуйте в
gulpfile.ts
и установите модуль ts-node. - Для Babel переименуйте в
gulpfile.babel.js
и установите модуль @babel/register.
Большинство новых версий узла поддерживают большинство функций, предоставляемых TypeScript или Babel, за исключением синтаксиса import
/export
. Если требуется только этот синтаксис, переименуйте его в gulpfile.esm.js
и установите модуль esm.
Более подробные сведения об этой теме и полный список поддерживаемых расширений можно найти в нашей документации gulpfile transpilation.
#
Разделение gulpfileМногие пользователи начинают с добавления всей логики в файл gulp. Если он когда-либо станет слишком большим, его можно будет преобразовать в отдельные файлы.
Каждую задачу можно разделить на отдельный файл, а затем импортировать в gulpfile для композиции. Это не только сохраняет порядок, но и позволяет тестировать каждую задачу независимо или изменять композицию в зависимости от условий.
Разрешение модуля узла позволяет вам заменить ваш файл gulpfile.js
каталогом с именем gulpfile.js
, который содержит файл index.js
, который рассматривается как gulpfile.js
. Затем этот каталог может содержать ваши отдельные модули для задач. Если вы используете транспилятор, назовите папку и файл соответствующим образом.