Нодемон + Экспресс 4.13.4

Я схожу с ума, пытаясь заставить Nodemon правильно работать с Express 4;) Я установил npm и изменил свой package.json на

  "scripts": {
    "start": "nodemon ./bin/www"
  },

Я запускаю сервер с помощью...

npm start

Если я затем внесу какие-либо изменения в файл route.js, никаких изменений не произойдет. Даже когда я обновляю браузер. После запуска ps aux | grep node я получаю следующее..

введите описание изображения здесь

Кажется, что работают ОБА сервер Nodemon И узла. Кто-нибудь еще видел это и понимает, почему? или как исправить?

Спасибо.

*ОБНОВЛЕНИЕ Это вывод моей консоли во время работы сервера.

введите описание изображения здесь


person barrylachapelle    schedule 13.10.2016    source источник
comment
node /usr/local/bin/nodemon ./bin/www — это nodemon, наблюдающий за вашим приложением на предмет изменений. Процесс node ./bin/www — это собственно ваше приложение (которое будет разветвлено nodemon). Я понятия не имею, почему изменение ваших файлов не приводит к перезапуску приложения nodemon.   -  person Tom Jardine-McNamara    schedule 13.10.2016
comment
Хммм ладно. Кажется, он отлично работает с нефритовыми файлами. Кажется, что он не работает только для файлов маршрутов. Спасибо, @TomJardine-McNamara. Я обновил образ консоли своего сервера. Не уверен, что это поможет....   -  person barrylachapelle    schedule 13.10.2016


Ответы (1)


Nodemon просматривает файлы только в текущем рабочем каталоге (в вашем случае ./bin потому что вы используете ./bin/www). Файлы вашего приложения не находятся в этом каталоге, поэтому nodemon их не просматривает.

Однако вы можете указать nodemon вместо этого просматривать один или несколько других каталогов. В вашем случае вам просто нужно сказать, чтобы он смотрел корень проекта, то есть nodemon ./bin/www --watch ..

Ваши файлы jade загружаются заново при каждом запросе механизмом просмотра экспресса, поэтому вы видели изменения, внесенные в них, без перезапуска приложения вами или nodemon.

Я сделал запрос на вытягивание в вашем репозитории, который заставляет npm start использовать nodemon таким образом.

person Tom Jardine-McNamara    schedule 13.10.2016
comment
Спасибо @Tom Jardine-McNamara, похоже, это все еще не работает. Я отправил свое приложение на github. Если у вас есть две секунды, вы бы мне очень помогли ;) github.com/barrylachapelle/temprepo - person barrylachapelle; 14.10.2016
comment
Сегодня буду дома, посмотрю :) - person Tom Jardine-McNamara; 16.10.2016
comment
Хотя беглый взгляд на ваш код показывает, что у вас нет папки app/. Вы можете указать nodemon следить за корнем проекта (nodemon -w . bin/www) или переместить код своего приложения в папку app и использовать nodemon -w app bin/www (я обычно делаю это, потому что в итоге у меня есть несколько папок, например, lib, config, и хранить файлы, не относящиеся к приложению (любые инструменты и т. д.) отдельно) - person Tom Jardine-McNamara; 16.10.2016
comment
Благодарю вас! Том! Так ценится. - person barrylachapelle; 16.10.2016