我正在尝试将帖子添加到一系列主题并以 json 格式发布,一切正常,但继承并没有达到我想要的效果。
var topicArray = [],
postArray = [];
// Create Topic and Post Array
topics.forEach(function(topic) {
topicArray.push({
"id": topic._id,
"title": topic.title,
"slug": topic.slug,
"lastPost": topic.updatedAt,
"posts": postArray
});
var posts = topic.posts;
posts.forEach(function(post) {
postArray.push({
"id": post._id,
"author": post.author,
"body": post.body,
"date": post.date,
"edited": post.updatedAt
});
});
});
它总是将所有帖子添加到所有主题,而不是将帖子仅添加到父主题。它们是猫鼬中的子文档,所以我认为如果它有效,那将是合乎逻辑的。因为它不起作用,所以我在帖子中添加了一个“主题”键,我在 if 中使用它来仅在帖子相同的情况下将帖子推送到数组,如下所示:
if(topic.id == post.topic) {
postArray.push({
"id": post._id,
"author": post.author,
"body": post.body,
"date": post.date,
"edited": post.updatedAt
});
}
但它只是最终没有得到任何帖子。我发现我用小写保存了它,所以我把它改成了
if(topic.id.toUpperCase() == post.topic) {
postArray.push({
"id": post._id,
"author": post.author,
"body": post.body,
"date": post.date,
"edited": post.updatedAt
});
}
它最终再次拥有所有这些......这个问题让我现在尝试了 4 个小时,我在这里错过了一些非常基本的东西,是吗?