Angular Nested GroupBy

时间:2016-03-06 21:10:13

标签: javascript angularjs

我正在尝试在Angular中使用嵌套的groupBy。无论出于何种原因(我都无法弄清楚原因),“正常”(键,值)方法对我不起作用。该页面始终为空白。我能够通过QuestionClusterID对其进行分组的唯一方法如下。以下是Plunker我试图让它与章节一起使用的方法。

在我的控制器中:

$scope.questionsToFilter = function () {
    indexedQuestions = [];
    return $scope.questions;
}
$scope.filterQuestions = function (question) {
    var questionIsNew = indexedQuestions.indexOf(question.QuestionClusterID) == -1;
    if (questionIsNew) {
        indexedQuestions.push(question.QuestionClusterID);
    }
    return questionIsNew;
}

在我的HTML中:

<div ng-repeat="cluster in questionsToFilter() | filter:filterQuestions">
    <div class="panel panel-default">
        <div class="panel-body">
            @*Question Section*@
            <div ng-repeat="q in questions | filter:{QuestionClusterID: cluster.QuestionClusterID}">

上述方法效果很好。现在的问题是我必须添加另一个分组级别,我似乎无法弄清楚如何做到这一点。我需要groupBy QuestionSectionID然后是QuestionClusterID。

我尝试编写类似的函数来获取这些部分:

$scope.filterSections = function (section) {
    var sectionIsNew = indexedSections.indexOf(section.QuestionSectionID) == -1;
    if (sectionIsNew) {
        indexedSections.push(section.QuestionSectionID);
    }
    return sectionIsNew;
}
$scope.sectionsToFilter = function () {
    indexedSections = [];
    return $scope.editablequestions;
}

这可以用来拉出章节,我无法弄清楚如何将集群“推”到每个部分。非常感谢任何帮助!

0 个答案:

没有答案