gpt4 book ai didi

javascript - Sequelize 错误: Unhandled rejection TypeError: expecting an array or an iterable object but got [object Null]

转载 作者:行者123 更新时间:2023-12-02 13:51:53 38 4
gpt4 key购买 nike

我尝试在我的模型中使用sequelize 中的findOne,但收到此错误模型引用的表为空,如何处理?

Unhandled rejection TypeError: expecting an array or an iterable object but got [object Null]

这是我的代码:

app.get('/test/models', function(req, res) {

var values = {
where: { user_id: 7 }
};

MercadoLibre.findOne(values)
.spread(function(err, meli) {

console.log(err);

if (typeof meli !== null) {
console.log("undefined");
} else {
console.log(meli);
}

res.redirect('/dashboard');
});
});

我该如何解决这个问题?

最佳答案

您的代码中有一些错误

  • 您应该处理来自 MercadoLibre.findOne()Promise.reject() 结果。
  • 您应该使用 .then() 而不是 .spread() 获取 findOne() 的结果

    .then(function(resolve)).catch(function(reject))

    • 可以在单个thenable中处理resolve()reject(),但格式为:

      .then(function(resolve), function(reject))

  • 您错误地检查了 null(不需要 typeof),并且您的代码将始终返回 true(即使 meliundefinedtypeof 也会如此)

    typeof meli !== null

app.get('/test/models', function(req, res) {
var values = {
where: { user_id: 7 }
};

MercadoLibre.findOne(values)
.then(function(result) {
// just check for false-y
if (!result) {
console.log('Nothing was returned!')
}
// redirect to the route you want
res.redirect('/dashboard');
})
.catch(function(err) {
// catch any errors
console.log('Error, do some kind of redirect?!', err);
});
});

关于javascript - Sequelize 错误: Unhandled rejection TypeError: expecting an array or an iterable object but got [object Null],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40964059/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com