Node.js 关闭错误的猫鼬连接

Node.js 关闭错误的猫鼬连接,node.js,error-handling,mongoose,Node.js,Error Handling,Mongoose,当mongoose无法连接到DB时,如何正确结束脚本 以下程序继续运行: var mongoose = require('mongoose'); mongoose.connect('mongodb://localhost/db', function(err){ if (err) { console.log(err); mongoose.connection.close(); } }); 我还尝试了mongoose.disconnect(),结果

当mongoose无法连接到DB时,如何正确结束脚本

以下程序继续运行:

var mongoose = require('mongoose');

mongoose.connect('mongodb://localhost/db', function(err){
    if (err) {
        console.log(err);
        mongoose.connection.close();
    }
});
我还尝试了
mongoose.disconnect()
,结果相同


最简单的方法显然是
抛出错误
但这似乎是一个残酷的解决方案。

如果
连接
功能失败(即
err!=null
),则表示连接状态未打开,因此无法关闭或断开连接

为了向自己证明这一点,您可以检查
mongoose.connection.readyState
(以下是示例)


我建议使用
mongoose.connection.on('error',cb)
以更好地处理连接错误。

但我如何处理错误?只要我不手动抛出错误,脚本就会继续运行。没有什么比上面几行更重要的了。你在回调函数中处理错误(这就是cb所代表的)。我的本地安装似乎有问题,在不同的设置中检查了它,代码就在那里退出了。我必须潜入其中。。。是否有办法查看哪些进程保持脚本运行?