承诺 - 如何正确地将错误附加到此示例

时间:2016-05-06 08:01:30

标签: javascript promise sequelize.js

我正在使用此代码。在某些情况下,我有很多“then”语句,在某些情况下我只有一个(像这个代码示例)。服务器是Hapijs。数据库使用Sequelize(MySQL)完成。

如何正确地将错误链接到此代码?

addMembers: function (request, response) {
var userGroupId = request.payload.usergroupid;
var userToGroupIds = JSON.parse(request.payload.usertogroupid);

var UsersToSystem = Promise.all(userToGroupIds.map(function (userid) {
    var newMember = {};
    newMember.UserId = userid;
    newMember.UserGroupId = userGroupId;

    return models.UserToGroup.create(newMember);

})).then(function (info){
    response({message: "DONE"}).code(200)
})

}

1 个答案:

答案 0 :(得分:1)

只需在.then之后添加一个.catch,当promise.all中的一个函数失败时,将调用它。您可以从那里返回(错误)响应。