Здесь говорится, что мы получили запрос на регистрацию пользователя, мы должны определить, является ли имя пользователя уже маркером (давайте просто предположим, что данные действительны), и если это так, на:Как разбить обещание в функции `then`
User
.getByName(name)
.then(function (user) {
// if user is not null, which means the username is already token
if (user !== null) return res.json({errorCode: 1001})
})
.then(function() {
// Oops, the previous return is captcha here
// how to break the promise and return the request
var user = new User({
name: name
})
})
Спасибо за помощь
Ну, кто решает, что «правильно»? Вы могли бы просто вернуть Promise.resolve() и Promise.reject() - не нужно создавать отложенные, а затем разрешать их позже в синхронном процессе ... – CFrei
@CFrei Я не вижу синхронного кода, но я согласен с тем, что код может быть улучшен, как возвращать 'resolve' и' reject', что сделает это хорошим примером для такой проблемы :) – jiananshi
@klamtlne, хотя мне нравится ваше редактирование, я думаю, что он меняет идею ответа Вакаса Ахмеда. –