Promise嵌套
return new Promise().then(function(res) {
if (!res) {
return new Promise().then(function(items) {
if (!items) {
return new Promise().then(function(data) {
return data;
});
}
return items;
});
}
return res;;
})
请问上述Promise嵌套如何处理
7 回复
return new Promise()
.then(function (res) {
if (res) {
return res;
}
return new Promise();
})
.then(function (items) {
if (items) {
return items;
}
return new Promise();
})
.then(function (data) {
return data;
})
@pauky 在第二个then方法中 如何知道items 是来自于上一个返回的res 还是 promise 从而做不同的处理呢
return 到下一个 then 里面接住,继续操作,不要嵌套
@bensonlove 可以在返回的res加一个属性来跟promise返回的区分
幽默,Promise就是解决嵌套的
@bensonlove return 的时候 return 一个 obj 呗
mogoose的查询方法怎么实现链式操作??比如: var Article = mongoose.model(‘Article’); var User = mongoose.model(‘User’); Article.findOne({name:req.body.name},function(err,article){ User.find({name:article.author},function(err,user){//通过用户名查找用户 …//多个回调最后一层回调中操作 res.redirect("/) }) })