【发布时间】:2018-01-31 22:03:34
【问题描述】:
我正在尝试使用 node.js 和 sequelize 进行简单的命令行数据库转换。我已将错误代码简化为以下内容,但它永远不会返回:
// Set up database connection and models
var models = require('../models_sequelize');
models.User.findOne()
.then(a => {
console.log(a.name);
});
我打印了一个名称,但随后脚本挂起。怎么了?我该如何调试它以查看卡住了什么?我的印象是有一个孤儿承诺没有兑现,但我不明白在哪里或为什么。我一定遗漏了一些明显的东西。
如果我从节点控制台以交互方式运行相同的程序,它会返回正常。
【问题讨论】:
-
完成后不应该有类似
close()的方法来终止数据库连接吗? -
即使他关闭,也不会改变任何事情。你能在这里分享更多的代码块细节吗?还尝试将所有内容放在 try catch 块中以识别问题
-
我已将代码简化到非常少,包括删除没有添加到问题的问题。大概无论如何都会在控制台上吐出任何异常? Close 似乎修复了它,所以大概这就是它被阻止的原因。
标签: node.js promise sequelize.js