nodemon not working properly

不羁岁月 提交于 2020-01-22 05:15:06

问题


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 save changes to files.

But when i try to start the server, something like this

nodemon ./app.js localhost 3000 or nodemon start localhost 3000

I get this as output

LM-SJC-00871929:webapp gdeep$ nodemon ./app.js localhost 3000
28 May 23:34:30 - [nodemon] v1.1.1
28 May 23:34:30 - [nodemon] to restart at any time, enter `rs`
28 May 23:34:30 - [nodemon] watching: *.*
28 May 23:34:30 - [nodemon] starting `node ./app.js localhost 3000`

but when i go to my webpage, i get

Oops! Google Chrome could not connect to localhost:3000. What am i doing wrong?

App.js here http://collabedit.com/t35dy


回答1:


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).




回答2:


Add following code in your code

  1. app.js

    app.listen(3000, function(){
        console.log("info",'Server is running at port : ' + 3000);
    });
    
  2. package.json

    nodemon app.js 
    

Then run npm start from the command line.




回答3:


try running nodemon ./app.js 3000 or nodemon start 3000




回答4:


For Express.js 4,
use nodemon
or
nodemon bin/www




回答5:


In my case, I had to install nodemon globally. Use this command to do so..

npm install -g nodemon

If you're using Linux you may need to prefix the command with the sudo keyword for administration access..

sudo npm install -g nodemon



回答6:


If you are using express4, the easiest way is to navigate to package.json and change "scripts": { "start": "node ./bin/www" }

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




回答7:


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




回答8:


For Express 4; Just run

nodemon

command (with out any args) on the directory; this works for me.




回答9:


You might also run into the issue of having an empty .nodemonignore.




回答10:


thanks you need to type this after to enter in the folder application with

cd your_project_folder

sudo nodemon bin/www




回答11:


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



来源:https://stackoverflow.com/questions/23927195/nodemon-not-working-properly

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!