I am running my nodejs app by npm start
I just installed nodemon by
sudo npm install -g nodemon
so that i can get my server restarted when i s
You're running express 4, which has the app.listen
call in a different file than app.js
. The command you're looking for is nodemon bin/www
(localhost
and 3000
are not needed in this scenario).
In fact, you can even run nodemon
with no args, and it'll read what command needs to be run from scripts.start
in package.json
(which express generates automatically).
For Express.js 4,
use nodemon
or
nodemon bin/www
try
npm install --save-dev nodemon
and then
in
package.json file
keep like this
"scripts": {
"start": "nodemon",
"test": "echo \"Error: no test specified\" && exit 1"
},
instead of npx nodemon, which takes more time
try running nodemon ./app.js 3000 or nodemon start 3000
Here's what I did to make nodemon update correctly:
nodemon index.js -L
The -L
flag stands for legacyWatch, here's an explanation from the official doc:
In some networked environments (such as a container running nodemon reading across a mounted drive), you will need to use the legacyWatch: true which enables Chokidar's polling.
https://www.npmjs.com/package/nodemon#application-isnt-restarting
Certain child processes related to your parent process may not be closed. Try to kill all the child processes.
Ref: https://github.com/remy/pstree