Содержание

nodemon (Скрипты автоматом перезагружаются)

nodemon - это инструмент, который помогает разрабатывать приложения на основе node.js путем автоматического перезапуска приложения node при обнаружении изменений файлов в каталоге.

nodemon не требует дополнительных изменений в вашем коде или методе разработки. nodemon - это заменяющая оболочка для node. Чтобы использовать nodemon, замените слово node в командной строке при выполнении вашего скрипта.

Installation

Либо путем клонирования с помощью git, либо с помощью npm (рекомендуемый способ):

npm install -g nodemon

И nodemon будет установлен глобально на ваш системный путь.

Вы также можете установить nodemon как зависимость разработки:

npm install --save-dev nodemon

При локальной установке nodemon будет недоступен в вашем системном пути. Вместо этого локальную установку nodemon можно запустить, вызвав ее из сценария npm (например, npm start) или используя npx nodemon.

Использование

nodemon обертывает ваше приложение, поэтому вы можете передать все аргументы, которые обычно передаете вашему приложению:

nodemon [your node app]

Для параметров CLI используйте аргумент -h (или –help):

nodemon -h

Использовать nodemon просто, если бы мое приложение приняло хост и порт в качестве аргументов, я бы запустил его так:

nodemon ./server.js localhost 8080

Любой вывод из этого сценария имеет префикс [nodemon], в противном случае весь вывод вашего приложения, включая ошибки, будет повторяться, как и ожидалось.

nodemon также будет искать свойство scripts.start в package.json (начиная с nodemon 1.1.x).

Автоматический перезапуск

Изначально nodemon был написан для перезапуска зависших процессов, таких как веб-серверы, но теперь поддерживает приложения, которые корректно завершают работу. Если ваш сценарий завершается без ошибок, nodemon будет продолжать отслеживать каталог (или каталоги) и перезапустить сценарий, если есть какие-либо изменения.

Ручной перезапуск

Во время работы nodemon, если вам нужно вручную перезапустить ваше приложение, вместо остановки и перезапуска nodemon вы можете ввести rs с возвратом каретки, и nodemon перезапустит ваш процесс.

Config

nodemon поддерживает локальные и глобальные файлы конфигурации. Обычно они называются nodemon.json и могут находиться в текущем рабочем каталоге или в вашем домашнем каталоге. Альтернативный локальный файл конфигурации можно указать с помощью параметра –config file.

Специфика заключается в следующем, так что аргумент командной строки всегда переопределяет настройки файла конфигурации:

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

{
  "verbose": true,
  "ignore": ["*.test.js", "fixtures/*"],
  "execMap": {
    "rb": "ruby",
    "pde": "processing --sketch={{pwd}} --run"
  }
}

Вышеупомянутый файл nodemon.json может быть моей глобальной конфигурацией, так что у меня есть поддержка файлов ruby ​​и файлов обработки, и я могу запустить nodemon demo.pde, и nodemon автоматически узнает, как запускать скрипт, даже если из коробки поддержка обработки скрипты.

Еще один пример параметров можно увидеть в sample-nodemon.md.

package.json
Если вы хотите хранить все конфигурации пакетов в одном месте, nodemon поддерживает использование package.json для настройки. Укажите конфигурацию в том же формате, что и для файла конфигурации, но в разделе nodemonConfig в файле package.json, например, возьмите следующий package.json:

{
  "name": "nodemon",
  "homepage": "http://nodemon.io",
  "...": "... other standard package.json values",
  "nodemonConfig": {
    "ignore": ["test/*", "docs/*"],
    "delay": 2500
  }
}

Обратите внимание, что если вы укажете файл –config или предоставите локальный nodemon.json, любая конфигурация package.json будет проигнорирована.

Этот раздел требует лучшей документации, но пока вы также можете увидеть nodemon –help config (также здесь).

https://www.npmjs.com/package/nodemon