nodemon工作不正常



我正在通过npm start 运行我的nodejs应用程序

我刚刚通过安装nodemonsudo npm install -g nodemon,这样我可以在保存对文件的更改时重新启动服务器。

但当我尝试启动服务器时,类似于这个

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

我得到这个作为输出

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`

但当我转到我的网页时,我会得到

Oops! Google Chrome could not connect to localhost:3000。我做错了什么?

此处为App.jshttp://collabedit.com/t35dy

您正在运行express 4,它在不同于app.js的文件中有app.listen调用。您要查找的命令是nodemon bin/www(在这种情况下不需要localhost3000(。

事实上,您甚至可以在不使用args的情况下运行nodemon,它将从package.json(express自动生成(中的scripts.start读取需要运行的命令。

以下是我为使nodemon正确更新所做的:

nodemon index.js -L

-L标志代表legacyWatch,以下是官方文档的解释:

在某些网络环境中(例如,在装载的驱动器上运行nodemon读取的容器(,您需要使用legacyWatch:true,它可以启用Chokidar的轮询。

https://www.npmjs.com/package/nodemon#application-是否重新启动

在我的情况下,我必须全局安装nodemon。使用此命令执行此操作。.

npm install -g nodemon

如果您使用Linux,则可能需要在命令前面加上sudo关键字以进行管理访问。。

sudo npm install -g nodemon

尝试运行nodemon ./app.js 3000 or nodemon start 3000

对于Express.js 4,
使用nodemon

nodemon bin/www-

在代码中添加以下代码

  1. app.js

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

    nodemon app.js 
    

然后从命令行运行npm start

  1. npm i nodemon
  2. 编辑您的Package.json文件:-将开始设置为nodemon
"scripts": {
    "test": "echo "Error: no test specified" && exit 1",
    "start": "nodemon server.js"
}
  1. 运行npm start尝试服务器

如果使用express4,最简单的方法是导航到package.json并更改 "scripts": { "start": "node ./bin/www" }

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

对于Express 4;只运行

节点

命令(不带任何args(;这对我有用。

谢谢您需要在之后键入此内容才能使用进入文件夹应用程序

cd your_project_folder

sudo nodemon bin/www

与父进程相关的某些子进程可能无法关闭。尝试终止所有子进程。

参考编号:https://github.com/remy/pstree

single quotation用于诸如"--exec"之类的多值参数。

例如,我将"nodemon --exec yarn build-langs"更改为"nodemon --exec 'yarn build-langs'"并工作。

 "scripts": {
    "start": "nodemon app.js"
  },

检查它,如果它是真的或不是

试试这个:

首先通过npm install nodemon或官方网站上的任何命令安装nodemon(https://www.npmjs.com/package/nodemon)然后通过npx nodemon filename.js启动节点或者,如果您随身携带package.json,并且入口点是要打开的文件,那么您也可以使用命令npx nodemon检查一次

希望它能起作用!!

快乐编码😀

您可以直接使用命令nodemon start启动服务器。

如果您使用Nodejs&TypeScript

npm i --dev nodemon ts-node

如果解决方案不适合您,并且您安装了Node.js 18或更高版本,则不再需要使用nodemon。相反,您可以传递--watch标志,Node将自动为您重新启动服务器:

node --watch index.js

注意--watch特性是实验性的。

您还可能遇到.nodemonignore为空的问题。

尝试

npm install --save-dev nodemon

然后在里面package.json file像这样保存

"scripts": {
    "start": "nodemon",
    "test": "echo "Error: no test specified" && exit 1"
  },

而不是需要更多时间的npx-nodemon

首先,卸载nodemon:

npm uninstall nodemon

卸载nodemon后,使用全局安装nodemon

npm i -g nodemon

它将全局安装nodemon,然后运行以下命令:

nodemon index.js or app.js

最新更新