O erro vem do
bcrypt.hash
No seu caso, você tem o seguinte trecho de código:bcrypt.hash(newUser.password, salt , (err, hash) => { ... }
Acho que seu problema vem do
newUser.password
que deve estar vazio (null
ou undefined
). O erro diz data and salt arguments required
. Parece que seu salt foi gerado corretamente e você não verificou se newUser.password === undefined
, então aqui está minha aposta:de alguma forma newUser.password
é indefinido. Além disso, você pode verificar se o
genSalt
O método funciona bem adicionando if(err) throw (err);
depois de chamá-lo como você fez para o bcrypt.hash
método.