Это должно сделать вашу работу:
app.post('/api/user', (req, res) => {
res.redirect('http://localhost:4200/');
const saltRounds = 10;
var hash = bcrypt.hashSync(req.body.password, saltRounds);
var newUserData = { username: req.body.username, password: hash, mail: req.body.mail, role: "user" };
var user = new User(newUserData, function(err) {
});
user.save();
});
Лучший (рекомендуемый) способ - сделать это асинхронно:
bcrypt.hash(req.body.password, saltRounds, (err, hash) => {
if (err) {
console.log(err);
return;
}
var newUserData = { username: req.body.username, password: hash, mail: req.body.mail, role: "user" };
var user = new User(newUserData, function(err) {
});
user.save();
});
});