Я изучаю Express
с Mongoose
и визуализирую страницу, на которой я запускаю forEach
в списке «кемпингов» из MongoDB
. Насколько я понимаю, при запуске функции .find необязательно передавать аргумент err
и запускать оператор if
. Но когда я полностью удаляю аргумент err
и оператор if
, я получаю сообщение «не могу запустить forEach
на null
, а когда я добавляю его обратно (никаких других изменений), мой код работает плавно. Не проблема, когда я добавьте его обратно, но я пытаюсь понять, что происходит в фоновом режиме. Заранее спасибо!
Приложение js код
//Create the camgrounds route
app.get("/campgrounds", function(req, res) {
//Get Campgrounds from DB
Campground.find({}, function(err, dbCampgrounds) {
//check for error
if (err) {
console.log(err);
//render the campgrounds page passing in the campground info from the db
} else {
res.render("campgrounds", {
renderCampGround: dbCampgrounds
});
}
});
});
И e js код файла
<div class="row">
<% renderCampGround.forEach(function(x){ %>
<div class="col-med-3 col-sm-6">
<div class="thumbnail">
<img src="<%= x.image %>">
</div>
<div class="caption">
<h4 <%= x.name %>>
</div>
</div>
</div>
<% }); %>
</div>