我正在与这个问题作斗争,但没有成功。我有以下树:
它有两种类型的节点,question和category。category是粗体的,questions旁边有一个圆圈。category中的数字必须显示该节点的子类别cun(简单),但问题是另一个数字,必须显示树中该节点以下级别中的问题类型节点的数量之和。我不能这样做。
我的当前版本(经过多次修改):
if (treeNode.children && treeNode.children.length) {
treeNode.questionCount = 0;
treeNode.subcategoryCount = treeNode.children
.filter((item) => item.type === NODE_TYPES.CATEGORY).length;
for (let i = 0; i < treeNode.children.length; i++) {
treeNode.questionCount += enrichWithNumberOfSubcategoriesAndQuestions(treeNode.children[i]);
}
}
if (treeNode.type === NODE_TYPES.QUESTION) {
return 1;
} else if (treeNode.type === NODE_TYPES.CATEGORY) {
return treeNode.children
.filter((item) => item.type !== NODE_TYPES.CATEGORY).length;
}
return 0;
1条答案
按热度按时间q7solyqu1#
这里有一个方法。我们定义了一个递归函数,它返回节点内的问题数。