Node.js Express中未使用bcryptjs定义变量
我尝试使用Express和bcrypt在我的应用程序中设置注册功能,但我遇到了一个问题。我按照步骤bcrypt我的密码,但是没有定义我的变量newUser。 有什么问题吗Node.js Express中未使用bcryptjs定义变量,node.js,express,bcrypt,Node.js,Express,Bcrypt,我尝试使用Express和bcrypt在我的应用程序中设置注册功能,但我遇到了一个问题。我按照步骤bcrypt我的密码,但是没有定义我的变量newUser。 有什么问题吗 / / Register Form POST const bcrypt = require('bcryptjs'); router.post('/register', (req, res) => { const newUser = newUser ({ name:
/
/ Register Form POST
const bcrypt = require('bcryptjs');
router.post('/register', (req, res) => {
const newUser = newUser ({
name: req.body.name,
surname: req.body.surname,
email: req.body.email,
password: req.body.password
});
bcrypt.genSalt(10, (err, salt) => {
bcrypt.hash(newUser.password, salt, (err, hash) => {
if(err) throw err;
newUser.password = hash;
newUser.save()
.then(user => {
req.flash('success msg', 'Vous êtes maintenant enregistré et pouvez vous connecter.');
res.redirect('/app');
})
.catch(err => {
console.log(err);
return;
});
});
});
});
您正在将
newUser
指定为函数。
但是,如果newUser
是猫鼬模式,那么正确的方法是:
const newUser = new newUser({
name: req.body.name,
surname: req.body.surname,
email: req.body.email,
password: req.body.password
});
看起来像一个简单的打字错误。
const newUser=newUser({
应该是const newUser=newUser({
new是从类创建对象的关键字,在本例中,model什么是
newUser
?它是函数吗?@qbolgi,我建议您确认这是否有帮助。谢谢