NODEMON-应用程序崩溃-在开始之前等待文件更改

时间:2018-08-16 00:48:48

标签: node.js nodemon mern

I'm following this tutorial.

当我运行'npm run server'时,在视频中的13:10,我收到错误消息:

[nodemon]应用程序崩溃-等待文件更改,然后再启动...

为什么会这样?端口5000已被使用吗?


这是终点站:

MyComputer:MERN_SHOPPING_LIST MyName $ npm运行服务器

mern_shopping_list@1.0.0服务器/ Users / MyName / Documents / Web Dev / MERN_SHOPPING_LIST nodemon server.js

[nodemon] 1.18.3

[nodemon]要随时重新启动,请输入rs

[nodemon]观看:

[nodemon]以node server.js开头

/ Users / MyName / Documents / Web Dev / MERN_SHOPPING_LIST / server.js:1 (函数(导出,需求,模块,__ filename,__ dirname){const express = required('express');                                                                               ^

ReferenceError:未定义必填

at Object.<anonymous> (/Users/MyName/Documents/Web Dev/MERN_SHOPPING_LIST/server.js:1:79)

at Module._compile (module.js:652:30)

at Object.Module._extensions..js (module.js:663:10)

at Module.load (module.js:565:32)

at tryModuleLoad (module.js:505:12)

at Function.Module._load (module.js:497:3)

at Function.Module.runMain (module.js:693:10)

at startup (bootstrap_node.js:191:16)

at bootstrap_node.js:612:3

[nodemon]应用程序崩溃-等待文件更改,然后再开始...

4 个答案:

答案 0 :(得分:2)

那是错字。

首先,这是(function (exports, require, module, __filename, __dirname) { ... })是什么?这是模块包装器功能。引发异常时,该模块已经具有包装函数。

让我们开始错误。

1 > const express = required('express');
                           ^

这就是您的错字所在。

现在让我们进入[nodemon]

之所以收到来自“ [nodemon]”的错误消息,是因为您正在使用名为nodemon的服务器开发工具。

答案 1 :(得分:1)

这是一个非常常见的错误,当您使用nodemon启动服务器时,您可能会遇到此错误。那么,这是怎么回事?怎么解决?

错误原因和解决方案:

第一

也许您的PC在后台运行了多个进程。因此,您需要停止所有正在运行的节点进程。

快速技巧,通过在终端上运行这些命令杀死它们:

pkill -f node

或杀死特定端口而不是全部端口

sudo lsof -i :8000 //replace 3000 with your port number
sudo kill -9 51009 // replace 31363 with your PID

然后重新启动nodemon。

第二:

Server.js和package.json不在同一文件夹中。

//check package.json
"scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
     "start": "nodemon Server.js"
 }

第三:

您在任何文件中都编写了错误的代码。因此,请确保您没有错过任何JS语法。如果您输入的代码错误,那么我在这里谈论的是语法错误(不是逻辑错误),那么您的nodemon将无法启动。

答案 2 :(得分:0)

您使用了一个词required,它是require

代码应位于require('express');第1行的server.js file上。

nodemon会在遇到错误时尝试为您重新启动该程序。如果您进行更改或进行必要的更正,则不需要,您将再次运行命令node server.js

答案 3 :(得分:0)

简单的答案是:

转到Mongodb集群并编辑 IPwhitelist 并刷新

然后再次连接它即可解决问题。

  

快乐编码

相关问题