Trie un tableau de EmberJS des objets en propriété
Je l'ai remarqué sur le EmberJS site web, sous l'Filtrage:
Une autre commune de la tâche à effectuer sur une Énumération est de prendre le
Énumérable en entrée et retourne un Tableau après tri ou le filtrage
en fonction de certains critères.
Imaginer que j'ai un tableau de Braise objets, comment dois-je aller sur le tri par la propriété?
App.DemoArray = Ember.ArrayController.create({
content:[
Ember.Object.create({name:'Joe', Age:29}),
Ember.Object.create({name:'Jim', Age:53}),
Ember.Object.create({name:'Jack', Age:12})
]
})
Ce que si je voulais de tri ci-dessus par l'âge? Merci pour votre aide!
EDIT:
J'ai trouvé ça dans le sproutcore de la documentation, mais il ne semble pas fonctionner avec de Braise:
Vous pouvez trier une Énumération basée sur la valeur de certains biens ou de la liste
de propriétés à l'aide de sortProperty. Si vous passez dans de multiples propriétés,
SproutCore va trier les éléments ayant la même valeur pour la première propriété
par la valeur du deuxième paramètre, et ainsi de suite.
La Section 3.8 sur cette page: http://guides.sproutcore20.com/enumerables.html
Vous devez vous connecter pour publier un commentaire.
Comme décrit ici vous pouvez maintenant trier vos ArrayController.
La façon dont vous le faire est de fournir des propriétés supplémentaires sur votre ArrayController (collé du lien ci-dessus):
Braise
MutableArray
a unsortBy
méthode:https://emberjs.com/api/ember/release/classes/MutableArray
EDIT: ci-dessous La solution semble être la seule à s'appliquer à des valeurs numériques. Cependant, ce lien vous donnera des conseils sur la façon de gérer l'alpha-numériques, dates, etc: http://www.javascriptkit.com/javatutors/arraysort2.shtml
Nevermind, j'ai tout compris. Vous pouvez le faire avec Javascript intégré dans la méthode de tri:
dans le cas où quelqu'un vient à travers cela, la mise à jour de façon à trier dans la braise est
sortDefinition peut être un tableau de chaînes
ou un comparateur de fonction
docs ici: http://emberjs.com/api/classes/Ember.computed.html#method_sort
Tel que discuté dans https://github.com/emberjs/ember.js/issues/335 de tri n'est pas mis en œuvre de plus dans le cœur
ember.js
paquet.