在加载 Express 之前启动数据库连接 4.x

Starting DB connections before load Express 4.x

我可能遗漏了一些东西,但官方文档中似乎没有任何东西,所以我只能在这里问;

我正在尝试在应用程序启动时异步设置一些内容(与数据库的连接等)。我希望在应用程序准备好接受连接之前完成此操作(出于显而易见的原因)。

有没有办法在 Express 4.x 中做到这一点?

这里 an example 基本上是我想要的,但它不受支持,而且此时已经过时 4 年了。

感谢任何帮助。

编辑: 我觉得我应该指出我使用 express-generator 来设置我的应用程序,所以所有的服务器侦听都是在 bin/www 中完成的。我应该只修改这个文件吗?或者我可以从 app.js 控制它吗?

例如,您可以使用 promises,如下所示:

var express = require('express');
var app     = express();

var Q = require('q');
var d = Q

mongoose.connect('mongodb://localhost/db', function(){
    return d.resolve();
});

d.promise.then(function(){
    app.listen(8080);
});