<div class="recent" ng-repeat="reader in
(filteredItems = (book.reader | orderBy: 'created_at' | limitTo: 1))">
</div>
Donc, le livre vient de l'api de repos et il a de nombreux lecteurs attachés. Je veux obtenir le lecteur «récent».
Le created_at
champ a la valeur qui identifie l'utilisateur comme récent. Mais le code ci-dessus me donne le lecteur le plus ancien. L'ordre doit donc être inversé? Existe-t-il un moyen d'avoir le tri dans l'ordre décroissant?
angularjs
angularjs-filter
Vote favorable
la source
la source
:
n'est pas une virgule. (Pour les autres personnes non pratiquantes)Vous pouvez faire précéder l'argument
orderBy
d'un «-» pour avoir un ordre décroissant au lieu de croissant. Je l'écrirais comme ceci:Ceci est également indiqué dans la documentation du filtre orderBy .
la source
Peut-être que cela peut être utile pour quelqu'un:
Dans mon cas, je recevais un tableau d'objets, chacun contenant une date fixée par Mongoose.
J'ai utilisé:
Et défini la fonction:
Cela a fonctionné pour moi.
la source
Et un exemple de code:
Et le JavaScript:
Te donnera:
Sur JSFiddle: http://jsfiddle.net/agjqN/
la source
Tri décroissant par date
Cela aidera à filtrer les enregistrements avec la date dans l'ordre décroissant.
la source
Dans mon cas, le orderBy est déterminé par une boîte de sélection. Je préfère la réponse de Ludwig car vous pouvez définir la direction de tri dans les options de sélection en tant que telle:
balisage:
la source
voir les exemples w3schools: https://www.w3schools.com/angular/angular_filters.asp https://www.w3schools.com/angular/tryit.asp?filename=try_ng_filters_orderby_click
puis ajoutez le drapeau "inverse":
la source
Mon conseil d'utilisation moment () est facile à gérer les dates si ce sont des valeurs de chaînes
la source
la source