0.3.4 • Published 4 years ago

gulp-bitrix v0.3.4

Weekly downloads
63
License
-
Repository
github
Last release
4 years ago

Сборка проектов на Bitrix

Устаравливаем модуль:

В gulpfile.js вызываем модуль с параметрами. Например:

Опцию dirName желательно указывать, чтобы сборка брала корневую папку вашего проекта, а не корневую папку модуля.

На данный момент, содержит в себе задачи:

def - выполняется сборка и включается watcher one - выполняется сборка, без запуска watcher dev - выполняется сборка c настройками среды development и включается watcher one - выполняется сборка c настройками среды development, без запуска watcher prod - выполняется сборка c настройками среды production и включается watcher prodOne - выполняется сборка c настройками среды production, без запуска watcher sprite - выполняется сборка файла _sprite.sass sass - сборка sass-файлов sassProject - сборка файла project.css sassComponents - сборка стилей в папках компонентов Битрикса js - babel-сборка js файлов jsx - babel-cборка jsx файлов jsComponents - сборка js-файлов в комонентах Битрикс fonts - сборка шрифтов img и pic - минификация картинок из разных директорий clean - очистка файлов проекта fullClean - очистка папки build setProd - установка режима Production setDev - установка режима Development watch - watcher getEnv - получение из файла .env данных о среде

path - пути к файлам проекта по-умолчанию options - путь к переданным опциям gulp - ссылка на объект gulp модуля

UPD v0.3.4
Из задачи prodOne удалена сборка sprite
Добавлена новая задача sprite, которая отдельно собирает файл _sprite.sass

Пример использования модуля через свойство:

Любую из стандартных задач можно переопределить, просто присвоив другую функцию:

Можно добавлять новые задачи с помощью функции addTask(name, task) где: name - название новой задачи; task - функция.

Функции подключаемые вами пользуются модулями, которые подключены в вашем Gulp-файле. То есть если вы собираетесь пользоваться только стандартными функциями - то модуль будет работать без дополнительных подключений. Если вы хотите переопределить или добавить свою задачу - нужно будет определить модули, которые используются в задаче.

Также имеется возможность развернуть задачи одной командой.

В функцию передается текущий экземпляр gulp.

Default - функция gulp при этом не создается, вместо нее устанавливается функция 'def'. Ее можно определить в вайшей default-функции

Или задать функции task.init() опцию initDefault:

Внимание! Если вы переопределяете стандартные задачи, добавляете свои или изменяете настройки путей - это нужно делать до того как будет вызван tasks.init(), иначе будут приняты только те изменения, которые были до ее вызова.

Еще один способ переопределить стандартные задачи - это просто определить их через gulp.task, опять же это делается до вызова функции init().

Этот способ работает только при переопределении задачи, добавить таким образом задачу, чтобы она использовалась модулем, не получится.

Есть два способа - сделать это путем изменения в модуле:

Либо передать в опциях при вызове модуля:

Но такой способ годится для более радикального изменения, так как будет изменено свойство build полностью.

При вызове модуля ему можно передать ряд опций:

dirName - директория относительно которой проставлены пути path - с помощью этой опции можно поменять пути к файлам. Изменения свойств объекта path происходит путем наложения объекта, то есть определив одно свойство другие остаются как и были. includeTasks - массив в котором можно перечислить задачи, которые будут выполнены в сборке. Если ничего не указано, выполняется весь список. excludeTasks - массив в котором можно перечислить задачи, которые не будут выполняться. Если ничего не указано, то все задачи будут выполнены. includePath - используется для определения пути к файлам sass, которые подключаются в project.sass staticFolder - стоит менять только если папка сборки находится в другом месте, нежели корневая папка используемых в задаче файлах sourcemaps - если выставлена эта опция - то будут генерироваться sourcemaps на сборке dev developmentWatchDelay - задержка watcher-a в изменении файла в development-среде productionWatchDelay - задержка watcher-a в изменении файла в production-среде sprite.imgName - можно указать имя файла, который будет создан при сборке спрайта (по-умолчанию "sprite.png") sprite.cssName - можно указать имя sass-файла, который будет создан при сборке спрайта (по-умолчанию "sprite.sass")