Войти с помощью github
Форум /

Привет! Хочу рассказать о полезной штуке, которую мы написали в Яндекс.Директе.

direct-dev-server - это веб-сервер для заданной ENB-ноды с автоматической пересборкой бандлов при изменении исходных файлов. Сервер имеет кэш и собирает бандлы только если исходные файлы изменились (в отличие от enb-server, который собирает при каждом http-запросе).

Его удобно использовать тогда, когда нужно часто менять код и пересобирать бандлы (например, во время отладки кода блоков). За счет того, что сборка запускается сразу же при изменении файлов и за счет использования кэша готовый для отладки набор бандлов формируется намного быстрее, чем, например, при использовании ENB в режиме сервера.

Как использовать

  1. Устанавливаем
npm i direct-dev-server
  1. Запускаем
node node_modules/direct-dev-server -b <название_бандла>
  1. В консоль выводится ссылка, открываем ее в браузере

    Конфигурационный файл

Конфигурационный файл должен лежать в корневой директории и называться .dev-server.js.

Пример:

module.exports = {
    bundles: 'bundles',             // папка с бандлами
    levels: [                       // список уровней переопределения
      'common.blocks'               // (в них будут отслеживаться изменения файлов)  
      'desktop.blocks'
    ],     
    defaultTarget: '?.test.html',   // таргет начальной страницы (будет открыта в браузере при старте)
    targets: {                      // зависимости таргетов от БЭМ-технологий
        '?.js': ['js'],
        '?.test.js': ['test.js'],
        '?.css': ['css']
    }
};