작성
·
181
0
안녕하세요!
강의 전체 수강 후 여러 질문들을 확인하다가 코멘트 수를 가져오는 코드를 봐서 실제 프로젝트에 적용 시켰습니다!
그런데 videos.map((video, index) => { } 안에서는 "commentNum" 코멘트 수가 나오는데
실제 화면 콘솔에서 찍었을 때는 누락이 되어서 질문 남깁니다...
Github : https://github.com/kimsojung318/youtube-clone
# router/video.js
router.get('/getVideos', (req, res) => {
// 비디오를 DB에서 가져와서 client에 전달함
// Video 컬렉션에 있는 모든 비디오를 가져온다.
Video.find()
.populate('writer') // 하지 않으면 비디오 ID만 가져오게 된다.
.exec((err, videos) => {
if (err) return res.status(400).send(err);
// 총 댓글 수 구하기
videos.map((video, index) => {
Comment.find({ 'postId': video._id })
.exec((err, comments) => {
if (err) {
return res.status(400).json({
success: false,
err
});
}
// models/Video.js "commentNum" Schema 추가
video.commentNum = comments.length;
console.log("commentNum 추가 : ", video);
}) // exec
}); // map
console.log("최종 : ", videos);
res.status(200).json({
success: true,
videos
})
}); // .find().exec
});
답변