Я работаю с nodejs и испытываю некоторые проблемы с отображением переменных. Я понимаю, что JavaScript является асинхронным, что может быть проблемой.Почему моя переменная не установлена
function getQryUser(user) {
if (user.chkUserStatus) {
if (user.lWaterLabID == 0) {
qryUser.sLabName = "Site Admin";
qryUser.sLabID = 0;
} else if (user.lWaterlabID == -9999) {
qryUser.sLabName = "Uber Admin";
qryUser.sLabID = "0";
} else {
request.query("Some Query", function(err, rows) {
if (err) {
throw err;
} else {
console.log('user found', rows);
setValue(rows[0]);
}
});
}
}
}
function setValue(value) {
qryUser = value;
}
Здесь проблема заключается в том, что qryUser отображается как null на отображаемой странице.
router.get('/secure', function(req, res) {
console.log('find user', user);
getQryUser(user);
console.log('hello from get route', qryUser);
res.render('secure/index',{
user: user,
qryUser: qryUser
});
});
Является ли 'qryUser' глобальной переменной? – Jack