Я хочу знать, понравилась ли пользователю книга и отобразить сердце в зависимости от состояния (понравилось / не понравилось) в результатах на мой взгляд.
Проблема в том, что значение из второго запросанедоступен за пределами этой функции.
Я попытался использовать внутреннюю асинхронную функцию, но это не дает результата.Я также попытался добавить книги в массив и вернуть, что это дает пустой массив.
var bookQuery = Book.find({ title: req.body.title}, {}, { skip: 0, limit: 200 })
.sort({ name: 1 });
bookQuery.lean().exec(function (err, books) {
books = books.map(function (book) {
Like.findOne({ object: book._id, likedby: req.session.passport.user }).exec(function (err, like) {
book.liked = (like != null) ? 1 : 0;
// Here it's available
});
return book;
});
cb(books);
}, cb);
Я хочу добавить поле для каждой книги со значением из запроса Like.Прямо сейчас отображаются только книги.