Nodemon一直在寻找index.js

时间:2018-04-13 15:20:09

标签: node.js express nodemon

我的 Nodemon 一直开始寻找index.js,但我想使用app.js,因为现在大多数人都使用app.js

enter image description here

如何更新我的nodemon以寻找app.js?

我试图卸载,重新安装没有帮助。

⚡️  vidjot  nodemon
[nodemon] 1.17.3
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `node index.js`
module.js:540
    throw err;
    ^

Error: Cannot find module '/Users/bheng/Sites/vidjot/index.js'
    at Function.Module._resolveFilename (module.js:538:15)
    at Function.Module._load (module.js:468:25)
    at Function.Module.runMain (module.js:684:10)
    at startup (bootstrap_node.js:187:16)
    at bootstrap_node.js:608:3
[nodemon] app crashed - waiting for file changes before starting...

的package.json

{
  "name": "vidjot",
  "version": "1.0.0",
  "description": "app to create video idea",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "express": "^4.16.3"
  }
}

4 个答案:

答案 0 :(得分:2)

Nodemon命令在package.json文件中搜索main属性并尝试执行它的文件。例如:

{
  "name": "app",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "henriquelborges",
  "license": "ISC"
}

您可以将“main”:index.js“更改为”main“:”app.js“。或者您可以运行”nodemon filename“来指定条目文件。我通常会将脚本添加到我的包中。 json。例子:

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

在此之后我只在我的项目根文件夹中使用“npm start”或“npm test”等命令。像Heroku这样的云应用程序平台需要在你的package.json上“npm start”才能执行你的应用程序。如果需要从命令行加载其他npm模块,将npm命令添加到项目中也很有用。

示例 - 您可以使用以下命令加载环境变量以在localhost上测试您的应用程序:

  

“test”:“nodemon -r dotenv / config app.js dotenv_config_path =。/ config.env”

答案 1 :(得分:1)

应该是app.js而不是index.js

...
"main": "app.js",
...

答案 2 :(得分:1)

nodemon documentation中所述,您只需在参数中指定应用程序的入口点:

nodemon ./app.js

或者您可以在package.json文件中指定它:

{
  "name": "app",
  "version": "1.0.0",
  "description": "",
  "main": "app.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "henriquelborges",
  "license": "ISC"
}

答案 3 :(得分:0)

你应该在 package.json 中编辑 main 值:

改变:

{
...
"main":"index.js"
...
}

到:

{
...
 "main":"app.js"
...
}