【发布时间】:2015-10-23 03:52:03
【问题描述】:
提前感谢您的帮助。
在使用 Bluebird Promise 时,我运行了一系列 Promise。在最后一个承诺期间,我想为数组中的每个对象多次运行一个函数。
下面是伪代码:
var userArray = [
{
name: "John",
email: "John@email.com"
},
{
name: "Jane",
email: "jane@email.com"
}];
var functionOne = function() {
//returns Promsie object
};
var functionTwo = function() {
//returns promise object
};
var createUser = function(user) {
return User.findOrCreate({email: user.email},{
name: user.name,
email: user.email
});
};
functionOne()
.then(functionTwo)
.each(createUser(userArray))
.then(function onComplete() {
console.log("Complete");
})
.catch(function onError() {
console.log("Um...it's not working");
});
我知道我没有正确使用每个功能。使用 Bluebird 实现这一点的正确方法是什么?
【问题讨论】:
-
你想在
each上迭代的数组是什么?是functionTwo返回的还是userArray返回的? -
@Sosdoc 我想在 userArray 上进行迭代
-
你必须传递一个回调函数给
each,而不是一个promise。
标签: node.js promise sails.js bluebird