series()#
Объединяет функции задач и/или составные операции в более крупные операции, которые будут выполняться одна за другой в последовательном порядке. Нет никаких ограничений на глубину вложенности составных операций, использующих series() и parallel().
Применение#
Подпись#
Параметры#
| параметр | тип | примечание | 
|---|---|---|
| tasks (required) | function string | Любое количество функций задачи может быть передано как отдельные аргументы. Строки можно использовать, если вы ранее регистрировали задачи, но это не рекомендуется. | 
Возвращается#
Составная операция, которая должна быть зарегистрирована как задача или вложена в другие композиции series и/или parallel.
При выполнении составленной операции все задачи будут выполняться последовательно. Если ошибка возникает в одной задаче, последующие задачи запускаться не будут.
Ошибки#
Если задачи не переданы, выдает ошибку с сообщением: "One or more tasks should be combined using series or parallel".
Когда передаются недопустимые задачи или незарегистрированные задачи, выдает ошибку с сообщением: "Task never defined".
Прямые ссылки#
Прямая ссылка - это когда вы составляете задачи, используя строковые ссылки, которые еще не были зарегистрированы. Это было обычной практикой в более старых версиях, но эта функция была удалена, чтобы ускорить выполнение задач и способствовать использованию именованных функций.
В более новых версиях вы получите сообщение об ошибке «Задача не определена», если попытаетесь использовать прямые ссылки. Вы можете столкнуться с этим при попытке использовать exports для регистрации задачи и составления задач по строкам. В этом случае используйте именованные функции вместо строковых ссылок.
Во время миграции вам может потребоваться использовать реестр прямых ссылок. Это добавит дополнительное закрытие к каждой ссылке на задачу и значительно замедлит вашу сборку. Не полагайтесь на это исправление надолго.
Избегайте дублирования задач#
Когда выполняется составная операция, каждая задача будет выполняться каждый раз, когда она была предоставлена.
Задача clean, на которую ссылаются две разные композиции, будет выполняться дважды и приведет к нежелательным результатам. Вместо этого выполните рефакторинг задачи clean, чтобы она была указана в окончательной композиции.
Если у вас есть такой код:
Переходите на это: