I need to pass mongo DB client from one promise to another. I found this question but a compiler still complains of unresolved variable. What do I do incorrectly?
Passing Variables Through a Promise Chain
mongo.connectToDatabase()
.then(dbClient => {
return findUser(dbClient, token);
})
.then((user, err) => {
return verifyUser(dbClient, user, err); // dbClient is unkwnown
});
function verifyUser(dbClient, user, err) {
if (err) {
return api.sendInternalError(callback, api.createError('failed to verify new user', "sign-up.something-went-wrong"));
}
if (!!user.auth.verified) {
return api.sendErrorForbidden(callback, api.createError('user has already been verified', "sign-up.already-verified"));
}
let query = { $set: { }, $unset: { } };
query.$set['auth.verified'] = true;
query.$unset['auth.verifyToken'] = '';
let result = dbClient.db().collection("users").updateOne({_id: user._id}, query);
}