Nodemon-安装过程中“干净退出-等待更改,然后重新启动”

cos*_*una 7 javascript postgresql node.js nodemon

我正在尝试使用Node和Postgres设置RESTful API。我遇到一个问题,每当我尝试运行服务器(使用npm start)在本地对其进行测试时,都会得到以下输出:

[nodemon] 1.14.10 [nodemon]随时重启,输入rs[nodemon]观看:[nodemon]启动node index.js server.js [nodemon]干净退出-等待更改,然后重新启动

在网上搜索了一段时间之后,我找不到确切的“干净出口-等待更改后重新启动”的确切含义的太多资源,在这种情况下尤其如此。

这是我的querys.js文件:

  1 var promise = require('bluebird');
  2 
  3 var options = {
  4   // Initialization Options
  5   promiseLib: promise
  6 };
  7 
  8 // created an instance of pg-promise, override default pgp lib w bluebird
  9 var pgp = require('pg-promise')(options);
 10 var connectionString = 'postgres://localhost:3000/actions';
 11 var db = pgp(connectionString);
 12 
 13 // add query functions
 14 
 15 module.exports = {
 16   getAllActions: getAllActions,
 17 //  getSingleAction: getSingleAction,
 18 //  createAction: createAction,
 19 //  updateAction: updateAction,
 20 //  removeAction: removeAction
 21 };
 22 
 23 function getAllActions(req, res, next) {
 24   db.any('select * from acts')
 25     .then(function (data) {
 26       res.status(200)
 27         .json({
 28           status: 'success',
 29           data: data,
 30           message: 'Retrieved ALL actions'
 31         });
 32     })
 33     .catch(function (err) {
 34       return next(err);
 35     });
 36 }
Run Code Online (Sandbox Code Playgroud)

这是我的index.js文件:

  3 var express = require('express');
  4 var app = express();
  5 var router = express.Router();
  6 var db = require('./queries');
  7 
  8 // structure: expressInstance.httpRequestMethod(PATH, HANDLER)
  9 app.get('/api/actions', db.getAllActions);
 10 //app.get('/api/actions/:id', db.getSingleAction);
 11 //app.post('/api/actions', db.createAction);
 12 //app.put('/api/actions/:id', db.updateAction);
 13 //app.delete('/api/actions/:id', db.removeAction);
 14 
 15 module.exports = router;
Run Code Online (Sandbox Code Playgroud)

对这里可能发生的事情有任何想法吗?提前致谢。

小智 7

您的代码有些错误。您从未告诉过您的应用要运行。准备好创建路由后,应使用以下命令启动服务器:

app.listen(<port on which the server should run here>);
Run Code Online (Sandbox Code Playgroud)

另外,您在同一文件中有一个Express应用程序和一个路由器。路由器仅应作为子模块使用(当您希望将应用程序划分为多个文件时非常方便)。现在,您什么也没做。如果您删除路由器和出口,那么它应该可以正常工作。