"Array.push() tidak berfungsi dengan betul apabila Mongoose Populasi"
P粉464113078
P粉464113078 2023-09-08 11:50:21
0
1
521

Saya membaca catatan lain tentang isu ini tetapi saya tidak dapat memikirkan cara untuk menerapkannya pada situasi saya (nod ​​js Array.push() tidak berfungsi apabila menggunakan mongoose)

Ini ialah fungsi Mongoose async populate saya, apa yang saya mahu lakukan ialah menolak nilai ke dalam tatasusunan akhir yang mengandungi setiap ulasan, yang akan saya lakukan sesuatu nanti. Walau bagaimanapun, .push() tidak berfungsi, saya sentiasa mendapat tatasusunan kosong daripada apa yang saya baca, ini ada kaitan dengan gelung for menjadi segerak dan tidak dapat menerima nilai async, tetapi saya tidak pasti; bagaimana untuk memperbaikinya

//空数组将被填充所有分数
const allReviewsRating = []
this.populate("reviews").then(async function (allReviews) {
  for (const review of allReviews.reviews) {
    allReviewsRating.push(review.rating)

  }
  // async.map(review, allReviews.reviews)

})

Tapi walaupun saya buat macam ni

const allReviewsRating = []
this.populate("reviews").then(async function (allReviews) {
  allReviewsRating.push(`1`)
  for (const review of allReviews.reviews) {
    allReviewsRating.push(review.rating)

  }
  // async.map(review, allReviews.reviews)

})

Tatasusunan akhir kosong, yang membuatkan saya lebih keliru

Saya ingin tahu apa yang perlu saya lakukan supaya array saya tidak kosong dan sebenarnya mempunyai nilai yang saya mahukan

P粉464113078
P粉464113078

membalas semua(1)
P粉289775043

Saya rasa anda perlu menyemak, this.populate()函数没有填充reviews,如果它填充了,那么问题可能出在allReviews.reviews, bahawa tiada ulasan di antara semua komen. Semua fungsi lain adalah normal. Saya mengujinya pada sistem saya.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan