Javascript 乔伊承诺会有错误
}Javascript 乔伊承诺会有错误,javascript,es6-promise,joi,Javascript,Es6 Promise,Joi,} 我确定err为null:D我做错了什么?我试着用这个和bluebird,但什么都没用:/你没有在任何地方声明err,所以它是未定义的(并在严格模式下抛出)。您可能想在回调中使用参数 此外,你不应该用错误来解决你的承诺,当有错误时,你应该拒绝它(否则就要履行它)。所以使用 您没有在任何地方声明err,因此它是未定义的(并在严格模式下抛出)。您可能想在回调中使用参数?您不应该解决您的承诺中的错误,当有错误时,您应该拒绝它(否则就执行)。我需要检查错误(来自joi.validate的错误)是否为
我确定err为null:D我做错了什么?我试着用这个和bluebird,但什么都没用:/你没有在任何地方声明
err
,所以它是未定义的(并在严格模式下抛出)。您可能想在回调中使用参数
此外,你不应该用错误来解决你的承诺,当有错误时,你应该拒绝它(否则就要履行它)。所以使用
您没有在任何地方声明err
,因此它是未定义的
(并在严格模式下抛出)。您可能想在回调中使用参数?您不应该解决您的承诺中的错误,当有错误时,您应该拒绝它(否则就执行)。我需要检查错误(来自joi.validate的错误)是否为空../然后我将检查验证是否已完成且没有任何错误或有错误(当我在“RegisterSchema,function(err)”中声明err时),什么也没有发生“err from joi.validate”是什么意思?检查在哪里?
registerController.validate(request.payload).then((err) => {
if(err === null) {
reply(true);
}
});
validate: function (data) {
return new Promise ((resolve) => {
Joi.validate({
username: data.username,
password: data.password,
email: data.email
}, RegisterSchema,function () {
resolve(err);
});
});
validate: function (data) {
return new Promise((resolve, reject) => {
Joi.validate(data, RegisterSchema, function(err) {
if (err) reject(err);
else resolve(true); // or a result if there is one?
});
});
}
registerController.validate(request.payload).then(reply, err => {
replyError(…) // or something
});