Je trouve le Tutoriels AngularJS difficile à comprendre ; celui-ci me guide dans la création d'une application qui affiche les téléphones. Je suis sur étape 5 et j'ai pensé qu'à titre expérimental, j'allais essayer de permettre aux utilisateurs de spécifier le nombre d'images qu'ils souhaitent voir apparaître. La vue ressemble à ceci :
<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>
J'ai ajouté cette ligne où les utilisateurs peuvent indiquer le nombre de résultats qu'ils souhaitent voir apparaître :
How Many: <input ng-model="quantity">
Voici mon contrôleur :
function PhoneListCtrl($scope, $http) {
$http.get('phones/phones.json').success(function(data) {
$scope.phones = data.splice(0, 'quantity');
});
$scope.orderProp = 'age';
$scope.quantity = 5;
}
La ligne importante est :
$scope.phones = data.splice(0, 'quantity');
Je peux coder en dur un nombre pour représenter le nombre de téléphones à afficher. Si je mets 5
dans, 5 seront affichés. Tout ce que je veux faire, c'est lire le nombre dans cette entrée à partir de la vue, et le mettre dans le champ data.splice
ligne. J'ai essayé avec et sans guillemets, et aucun ne fonctionne. Comment dois-je m'y prendre ?