Я огромный AngularJS n00b, и я нахожу даже tutorials трудно понять. В этом учебном руководстве вы можете найти приложение, которое отображает телефоны. Я нахожусь на step 5, и я подумал, что в качестве эксперимента я попытаюсь разрешить пользователям указывать, сколько из них они хотели бы показать. Вид выглядит следующим образом:ngRepeat - ограничение количества отображаемых результатов
<body ng-controller="PhoneListCtrl">
<div class="container-fluid">
<div class="row-fluid">
<div class="span2">
<!--Sidebar content-->
Search: <input ng-model="query">
How Many: <input ng-model="quantity">
Sort by:
<select ng-model="orderProp">
<option value="name">Alphabetical</option>
<option value="age">Newest</option>
</select>
</div>
<div class="span10">
<!--Body content-->
<ul class="phones">
<li ng-repeat="phone in phones | filter:query | orderBy:orderProp">
{{phone.name}}
<p>{{phone.snippet}}</p>
</li>
</ul>
</div>
</div>
</div>
</body>
Я добавил эту строку, пользователи могут ввести сколько результатов они хотят показали:
How Many: <input ng-model="quantity">
Вот мой контроллер:
function PhoneListCtrl($scope, $http) {
$http.get('phones/phones.json').success(function(data) {
$scope.phones = data.splice(0, 'quantity');
});
$scope.orderProp = 'age';
$scope.quantity = 5;
}
важно строка:
$scope.phones = data.splice(0, 'quantity');
Я могу записать код в количестве, чтобы представить, сколько телефонов должно быть показано. Если я положу 5 дюймов, будет показано 5. Все, что я хочу сделать, это прочитать номер на этом входе из представления и поместить его в строку data.splice. Я пробовал с кавычками и без них, и я не работаю. Как мне это сделать?
Стоит отметить - и сохранить кого-то еще несколько минут - если вы используете «дорожку», он ДОЛЖЕН быть последним после фильтров. –
Есть ли способ получить количество доступных предметов при использовании фильтра и limitTo? Я хотел бы использовать 'limitTo', но для увеличения лимита можно добавить кнопку« загрузить больше ». Это должно отображаться только в том случае, если доступно больше записей. –
@ TimBüthe Попробуйте это решение: http://stackoverflow.com/a/19665313/1095616 – Stewie