Я использую node express. Я пытаюсь заполнить поле, которое заполняется из другого поля. Но у меня возникла проблема, поэтому я попытался получить значение из другого запроса, а затем установить его на объект, который я отправлял.
api.get('/:id', authenticate, (req, res) => {
let query = MobileTranscation.findById(req.params.id)
.populate('sender')
.populate('created_by');
query.exec((err, datas) => {
if (datas.sender && datas.sender.parent) {
User.findById(datas.sender.parent, (err, user) => {
datas['parentName'] = user.username;
console.info(datas);
res.json(datas);
});
} else {
res.json(datas);
}
});
});
Здесь я хочу получить имя пользователя из MobileTranscation.sender, в котором у отправителя есть родительское свойство, которое имеет свойство username. Я пытался указать отправителя, а затем взять родительский идентификатор и выполнить поиск пользователя с этим и получить имя пользователя. Проблема, с которой я столкнулся, заключается в том, что если я регистрирую datas.parentName, я вижу, что получил имя пользователя, но когда я отправляю данные, свойство parentName отсутствует. Что я здесь делаю не так?
И возможно ли заполнить свойство, а затем заполнить одно из этих заполненных свойств?
Это работает, приятель .. спасибо
Вы можете добавить это в качестве ответа. Будет отмечен как правильный



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Всякий раз, когда вы делаете findById, мангуст фактически отправляет взамен какой-то неизменяемый объект. Таким образом, вы не можете добавить к объекту дополнительный ключ. Фактически вы можете использовать функцию .lean. Как query.lean().exec((err, data) => { /** Function body* */ }). Теперь вы можете добавить дополнительные ключи, которые хотите.
Всякий раз, когда вы делаете findById, мангуст фактически отправляет взамен какой-то неизменяемый объект. Таким образом, вы не можете добавить к объекту дополнительный ключ. Фактически вы можете использовать функцию .lean. Как
query.lean().exec((err, data) => { /** Function body* */ }). Теперь вы можете добавить дополнительные ключи, которые хотите.