Как переписать на промисы с async await?
Не получается переписать на промисы с async await.
В async/await все работает.
Kод:
const jwt = require('jsonwebtoken')
const {User} = require('../models/user')
const bcrypt = require('bcryptjs')
const createUser = (data) => {
return User.create({
where:{
data
}
})
}
const registerUser = (req, res) => {
const {email, firstName, lastName, password} = req.body
return findUser(email)
.then(() => {
alert(`The user with the same "${email}" email is already exists`)
})
.catch(() => {
const user = new User({
firstName,
lastName,
email,
password
})
return user
})
.then(() => {
const salt = bcrypt.genSalt(10)
return salt
})
.then(()=>{
return user.password = bcrypt.hash(password, salt);
})
.then(()=>{
const payload = {
user: {
id: user.id
}
jwt.sign(payload, config.get('jwtSecret'), {
expiresIn: 360000
}, (err, token) =>{
if(err) throw err;
res.json({token});
})
}
})
}