我收到以下代码的typeError。数据数组是在该函数seedDB之前创建的。
TypeError: Cannot read property 'push' of undefined
代码如下:
function seedDB() {
Campground.deleteMany({}, function(err, res){
if(err) {
console.log(err);
} else {
console.log("removed campgrounds");
}
data.forEach(function(seed) {
Campground.create(seed, function(err, campground) {
if(err) {
console.log(err);
} else {
console.log("added a new campground");
Comment.create(
{
text: "this place is great",
author: "Homer"
}, function(err, comment) {
if(err) {
console.log(err);
} else {
//it is this line here....=>
campground.comments.push(comment);
campground.save();
console.log("created new comment");
}
});
}
});
});
});
}
答案 0 :(得分:0)
您收到错误消息是因为营地不包含键comments
或campground.comments.push(comment)
的值都不是数组。在{{1}}之前记录营地,以检查营地中的“注释”是否已定义。