Cảm ơn trước sự giúp đỡ.Lời hứa Bluebird - mỗi chức năng
Trong khi sử dụng lời hứa Bluebird, tôi có một loạt lời hứa đang chạy. Trong lời hứa cuối cùng, tôi muốn chạy một hàm nhiều lần cho mỗi đối tượng trong một mảng.
Dưới đó là giả:
var userArray = [
{
name: "John",
email: "[email protected]"
},
{
name: "Jane",
email: "[email protected]"
}];
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");
});
tôi biết tôi không sử dụng mỗi chức năng một cách chính xác. Cách chính xác để thực hiện điều này bằng cách sử dụng Bluebird là gì?
mảng bạn muốn lặp lại với 'mỗi' là gì? Nó được trả về bởi 'functionTwo' hay là' userArray'? – Sosdoc
@Sosdoc Tôi muốn lặp lại trên userArray – Jay
Bạn phải chuyển một hàm gọi lại tới 'mỗi', không phải là lời hứa. – Bergi