1

我在我的DB中有兩個遊戲配置,我想用Angular顯示兩個遊戲的情況。ng-repeat在ng-repeat中,不正確顯示

Game.create({ 
    name : 'Iphone 5S', 
    info : '', 
    price : 2, 
    cases : 25 
}, { 
    name : 'Iphone 4', 
    info : '', 
    price : 5, 
    cases : 20 
}); 

我有這樣的:

<div ng-repeat="game in games"> 
    <ul ng-repeat="i in getTimes(game.cases) track by $index"> 
      //game.cases = 25, already is ok 
      <button type="button" class="btn">O</button>    
    </ul> 
</div> 

我的功能getTimes

$scope.getTimes=function(n){ 
    return new Array(n); 
}; 

爲什麼我只有一個按鈕,每場比賽? 我想要game1的25個按鈕和game2的20個按鈕。

+0

它應該沒事的。你看到你的控制檯有任何錯誤嗎?另外注意ul只能有li作爲它的直接子。 – PSL

+0

已經可以在控制檯中:/ 當我在我的getTimes函數中添加一個警告時,我有25到。 :/ – Pixel

+0

我所說的你應該只有像案例中指定的那麼多的按鈕。問題在別處。請向我們展示一個展示該問題的演示(儘管如此,您很有可能會自己發現問題)。 – PSL

回答

1

您需要確保該值用於創建數組是一個數字:

$scope.getTimes=function(n){ 
    return new Array(+n); 
}; 

否則它會創建一個大小1陣列您在傳遞值

+0

謝謝你的工作! 我可以有你的意見,我最後的答案? – Pixel