反应本机/JS嵌套数组检测



我这里有一个嵌套数组,我在问题 300 下有一些答案。 在这里,一些答案也有回复。像"parent_answer_id">

在我的应用程序中,我尝试仅在"parent_answer_id"== 0时显示它将显示在列表中,如果其他项目的"parent_answer_id"与其他项目"id"匹配,那么将在该循环中显示额外的内容">更多回复>"。

到目前为止,我尝试了本机反应:

var k =0;
for ( let j = 0; j < Object.keys(item.answers[1]).length; j++) {
if (item.answers[1][j].parent_answer_id==0) {
var parent = 1;
};
if (parent) {
k++;
if (count-1 == j) {
var last = 1;
}
parents.push(
<View key={j}>
<View style={styles.answerItem}>
<View >
<Text>
{item.answers[1][j].content}
</Text>
</View>

<View>
<Text>more reply > </Text>
</View>
</View>
</View>

);
};
}

我的示例数组在这里

"answers": [
[ 5,
{
"id": "215",
"parent_answer_id": "214",
"question_id": "300",
"content": "zksjbviul",
"question_content": "gggg",
"is_like": "0",
},
{
"id": "214",
"parent_answer_id": "213",
"question_id": "300",
"content": "ksdgzbvjzh,",
"question_content": "gggg",
},
{
"id": "213",
"parent_answer_id": "0",
"question_id": "300",
"content": "kuqebvjzd",
"question_content": "gggg",
},
{
"id": "212",
"parent_answer_id": "0",
"question_id": "300",
"content": "iauvhiuds",
"question_content": "gggg",
},
{
"id": "211",
"parent_answer_id": "0",
"question_id": "300",
"content": "fdfs",
"question_content": "gggg",
},
]
],
  1. 第一个答案是answers[0][0] 问题已编辑
  2. 我会收集"主要"答案和相关答案,然后再将其整理成演示文稿。

这涉及递归地查找(并可能为每个子答案创建)相同的树结构;就像你的模式现在一样,每个"顶级"答案都有一个任意嵌套的子答案层次结构,就像任何线程对话机制一样。

最新更新