Все, что я хочу сделать, это запустить запрос, проверить, зарегистрирован ли уже адрес электронной почты, и, если да, отклонить запрос, если не выполнить некоторую проверку, а затем создать пользователя в моей таблице пользователей. Это что-то вроде оболочки, код изначально был основан на https://github.com/vitaly-t/pg-promise-demo, этот код потрясающий, но я - нет. Обещания для меня совершенно бессмысленны, я понятия не имею, что мне возвращать и куда.
Этот код запускается и достигает того, что должен, но затем он попадает в ловушку и отправляет обратно «Cannot read property 'then' of undefined». Когда я пытаюсь связать второй .then так, чтобы он не находился внутри первого .then (), я получаю ошибки, которые я пытаюсь изменить после того, как он уже был отправлен.
Может кто-нибудь помочь мне понять, что здесь не так и как это исправить?
useradd: function (req, res) {
db.users.findbyemail(req.body.email)
.then(function(data){
if( typeof data === undefined || data === null) {
db.users.add({
provider: 'local',
email: req.body.email,
password: req.body.password,
salt: 'salt',
displayName: req.body.displayName })
.then(function(data){
res.json({
success: true,
data: "Account created"
})
})
} else {
res.json({
success: false,
error: "Email address " + req.body.email + " is already registered on this site"
})
}
})
.catch(function(error){
res.json({
success: false,
error: error.message || error
})
})
}
db.users.add
не возвращает обещание, что, на мой взгляд, звучит как ошибка в библиотеке. - person Bergi   schedule 08.09.2016users.add
не возвращает обещание. @Bergi LOL, ты разместил его на несколько секунд раньше меня :) Хотя это не связано с библиотекой, методusers.add
- это его собственный код;) - person vitaly-t   schedule 08.09.2016db.users.add
вместоreturn db.users.add
приведет к созданию кода без.catch
. - person vitaly-t   schedule 08.09.2016add: name => rep.one(sql.add, name, user => user.id),
, а мой выглядит так:add: (values) => { rep.one(sql.add, values, user => user.id)},
где я должен получить возврат? I - person user2338041   schedule 09.09.2016