2017-02-23 65 views
2

我有嵌套問題ng-repeat。我是新來的AngularJS所以也許我不明白這個概念。如何在ng-repeat中進行ng-repeat?

我需要顯示組和其中我需要顯示ITEMS其中有GROUP_IDGROUP

我知道怎麼做PHP但我需要在AngularJS

這是我會怎麼給它PHP

$result=mysqli_query($mysqli, "SELECT * FROM groups ORDER BY position ASC"); 

while ($row=mysqli_fetch_assoc($result)) { 
    echo '<h1>',$row['name'],'</h1>'; 

    $items=mysqli_query($mysqli, "SELECT * FROM items WHERE group_id='".$row['id']."'"); 
    while ($itemsrow=mysqli_fetch_assoc($items)) { 
     echo '<p>',$itemsrow['name'],'</p>'; 
    } 
} 

我試圖ng-repeatng-repeat但我不知道如何從實際組訪問GROUP_ID。我希望你明白我的意思。任何人都可以幫忙?

+1

你能提供您要顯示JSON? – Mistalis

+0

我已經試過先獲取GROUPS,然後再試試ITEMS。這就是爲什麼我有兩個JSON數據。 First: '[{「id」:「1」,「name」:「Silnik」,「position」:「0」},{「id」:「2」,「name」:「Podajnik」位置「:」1「}]' 二看起來相同,但它有其他值 –

+1

**請提供**您的JSON數據。 – Mistalis

回答

1

嘗試:

<div ng-repeat="group in groups track by group.id"> 
    <h1 ng-bind="group.name"></h1> 
    <div ng-repeat="item in items | filter: {group_id: group.id} track by $index"> 
    <div ng-bind="item.name"></div> 
    </div> 
</div> 

plunker:https://plnkr.co/edit/EhjvrFm5c0NSSf0Vwnk2?p=preview

+0

是啊!有用。謝謝;) –

+0

我現在有問題。我改變了** item.position **軌道,它的工作原理,但...這是我的JSON: '3:{id:「3」,group:「1」,name:「temp1」,type:「temp 「} 4:{id:」4「,group:」2​​「,name:」pa1「,type:」pascal「} 5:{id:」5「,group:」2​​「,name:」temp_zb 「,輸入:」temp「}' 我唯一改變的是之前是item的位置的對象的編號(3,4,5),但現在我想要做唯一的編號ID。現在我有錯誤:** [filter:notarray] **爲什麼它不起作用。我沒有改變任何角度 - 只有在JSON中 - 數字是不同的。 –

+0

我用你的對象更新了我的plunker(https://plnkr.co/edit/EhjvrFm5c0NSSf0Vwnk2?p=preview),它工作正常。請分叉我的掠奪者並重現您的問題,我會盡力提供幫助 – Andriy