2017-04-20 144 views
0

我有這種結構的對象過濾,但我不知道我怎麼可以過濾NG-重複內容與以前NG-重複迭代的對象。NG重複先前NG重複

// ############################################ ################################ //

模式

var app = angular.module('myApp', [angular.filter]); 

app.controller('controller', function($scope){ 

$scope.dashboards =[{"name":"Dashboard 1","category":"C1","subcategory":"SC1"}, 
        {"name":"Dashboard 2","category":"C1","subcategory":"SC2"}, 
        {"name":"Dashboard 3","category":"C2","subcategory":"SC1"}, 
        {"name":"Dashboard 4","category":"C2","subcategory":"SC2"}, 
        {"name":"Dashboard 5","category":"C2","subcategory":"SC3"}]; 
}); 

// ################################################ ############################ //

HTML

<div ng-app="myApp"> 
<div ng-controller="controller"> 

<div ng-repeat="dashboard in dashboards | unique: 'category'"><!--Level 1--> 
    <h2>{{dashboard.category}}</h2> 
    <div ng-repeat="dashboard in dashboards | filter: { category: {{dashboard.category}} } | unique: 'subcategory'"><!--Level 2--> 
     </h3>{{dashboard.subcategory}}</h3> 
     <div ng-repeat="dashboard in dashboards | filter: { subcategory: {{dashboard.subcategory}} }"><!--Level 3--> 
     <p>{{dashboard.name}}</p> 
     </div> 
    </div> 
</div> 

</div> 
</div> 

我的問題是,我不知道如何使用較低級別的內容過濾NG重複。

例如我試圖使用爲一個函數與第1級的類別來篩選2級,並用2電平的子類別過濾級別3使用其他expresion

*在1級和2我使用的過濾器返回我我的模型的唯一值

+0

我認爲你需要更好地解釋你正在嘗試做的。你當然可以使用更高範圍的變量,但是我不清楚你想要什麼。 – DrC

+0

我編輯的問題,爲了更好地解釋 –

回答

1

沒有與HTML是相當簡單的幾個問題。

首先,表達式({{ }})不允許在ng-repeat;解析器將找出沒有表達式語法的屬性。

<div ng-repeat="dashboard in dashboards | unique: 'category'"> 
 
    <!--Level 1--> 
 
    <h2>{{dashboard.category}}</h2> 
 
    <div ng-repeat="dashboard in dashboards | filter: { category: dashboard.category } | unique: 'subcategory'"> 
 
    <!--Level 2--> 
 
    <h3>{{dashboard.subcategory}}</h3> 
 
    <div ng-repeat="dashboard in dashboards | filter: { subcategory: dashboard.subcategory }"> 
 
     <!--Level 3--> 
 
     <p>{{dashboard.name}}</p> 
 
    </div> 
 
    </div>

http://plnkr.co/edit/dniUyHdIWGFOWYJyKjjf?p=preview

這並不是故事的全部,但是。由兩者categorysubcategory待過濾的3級div需求。

<div ng-repeat="dashboard in dashboards | unique: 'category'"> 
 
    <!--Level 1--> 
 
    <h2>{{dashboard.category}}</h2> 
 
    <div ng-repeat="dashboard in dashboards | filter: { category: dashboard.category } | unique: 'subcategory'"> 
 
    <!--Level 2--> 
 
    <h3>{{dashboard.subcategory}}</h3> 
 
    <div ng-repeat="dashboard in dashboards | filter: { category: dashboard.category, subcategory: dashboard.subcategory }"> 
 
     <!--Level 3--> 
 
     <p>{{dashboard.name}}</p> 
 
    </div> 
 
    </div> 
 
</div>

http://plnkr.co/edit/6ClArqDH3OiQ7ECT95YD?p=preview

+0

非常感謝你的幫助 –