我有一個着名的places
數組,每個地方包含一個帶有20個元素的tour
數組20個是每個着名地點下的巡視數量。例如'埃及'包含20個吸引人的地點。但問題是一些旅遊不包含任何酒店,但一些旅遊有酒店。這是我的代碼。無法顯示使用limitTo以及ng-show和ng-repeat後的過濾項目
<div ng-repeat="tour in place.tours | limitTo:3" ng-show="tour.hotels.length != 0">
<li>
<a ng-repeat="hName in tour.hotels"> {{hName.name}}
</a>
</li>
</div>
在第一ng-repeat
我已示出只含酒店遊使用ng-show
(酒店1的數)。在第二個ng-repeat
我已經顯示hotels
陣列的酒店名稱。
最終,我從包含酒店的旅遊中抽取了所有酒店名稱,使用兩個ng-repeat
。
一切工作正常,但現在我想只顯示酒店名單中的第3個酒店名稱,我從第二個ng-repeat
獲得。但在第一ng-repeat
中加入limitTo:3
並未顯示第3個酒店名稱,因爲前3個元素已隱藏,因爲沒有酒店,但有個索引仍然存在! 。
,我發現這個類似的話題,但它無法幫助Using ng-repeat and limitTo to limit the number of visible items displayed
我如何可以顯示從過濾的酒店列表僅一日3酒店名稱?或者我做錯了什麼?
不知道如果我得到你的問題,但嘗試改變'NG 「顯示」到「ng-if」,所以前3個元素不會被渲染。 如果不是這種情況,請分享您的數據並澄清您要實現的目標 – nitzanerman
您需要使用過濾器https://docs.angularjs.org/api/ng/filter/filter –