J'ai donc une matrice que j'utilise NG-REPEAT pour rendu, mais je veux inverser cette liste. Auparavant, j'ai utilisé un filtre que j'ai reçu de cette réponse: angulaire NG-répéter dans l'inverse a > mais maintenant je reçois une erreur: "TypeError: objet # n'a pas de méthode 'SLICE'
en portée. "Je ne suis pas sûr que cela soit dû à une nouvelle version de Angularjs ou que je manque quelque chose. p> Ceci est mon code de filtrage: P> data-ng-repeat='feed in feeds | reverse'
7 Réponses :
Quelle est la structure d'un seul aliment? Il semble que vous puissiez utiliser le filtre intégré de l'angulaire pour commander la façon dont vous voulez. Par exemple, si le champ "ID" est ce qui fournit "ordre" dans le tableau, vous le feriez:
return Array.prototype.slice.call(items).reverse();
Je suis très nouveau à JavaScript et à Angularjs, donc je suis vraiment désolé si je ne suis pas capable d'être plus précis au sujet des types de types que je traite parce que franchement, je ne suis pas vraiment sûr! Mais je suis vraiment reconnaissant pour l'aide que j'ai obtenue jusqu'à présent. La structure de l'alimentation ressemble à ceci: FeedId: {ID: 'ID de l'utilisateur', Meta: 'Certaines description', Nom: «Nom de l'utilisateur»} Lorsqu'un flux obtenu est affiché par un utilisateur qu'il atterrit sur le bas, I Vous voulez qu'il soit rendu sur le dessus (imaginez le flux Twitter).
J'utilise Angular 1.13.15 avec une variable de post-étendue = [{Titre: "One ', UPVotes: 500}, {Titre:" Titre ", UPVOTes: 400}] et apparemment Data-NG-Repevective =" Poste dans les messages | Order Order: Upvotes: Reverse "Ne fonctionnera pas, aucune suggestion?
Pour rendre le tableau Render en marche arrière et commandé par «ID», cela devrait fonctionner:
data-ng-repeat="feed in feeds | orderBy:'id':true"
Parfait merci... :)
J'espère que cela résoudra votre problème
data-ng-repeat='feed in feeds.reverse()'
Ceci est un peu délicat, mais pour toutes les personnes intéressées par l'inverser un tableau sans créer de nouvelles fonctions de prédicat et / ou modifier le tableau, etc.
ng-repeat="feed in feeds | orderBy:'-'"
Votre suggestion trierait également la matrice, qui n'est pas un effet souhaité dans la question de l'OP La solution complète serait Orderby: '[]': true code>, donc il y a 0 prédicats et la commande est laissée intacte , seulement inversé
Merci! Je cherchais un moyen d'inverser l'ordre par défaut. '-' a travaillé pour moi.
Une solution qui ne trie pas le tableau, mais seulement les copie et l'inverse:
ng-répéter = "élément dans les éléments | Orderby: '[]': vrai" code> p>
Veuillez utiliser directement la fonction de tranche de java-script avec inverse comme ceci:
J'éviterais d'utiliser deux fonctions appelées de la DOM car elle peut être très lourde sur le temps de rendu DOM si les listes deviennent plus grandes. Si vous devez absolument aller de cette façon, faites cette réversion dans votre code JS. Bien que des options angulares intégrées sont intégrées ci-dessous dans d'autres réponses.
Une autre solution alternative d'atteindre l'inverse de l'angularjs est
On dirait que les aliments ne sont pas un tableau ...
J'utilise FireBase pour lier un objet de portée locale.feeds avec le backend.
Donc, l'élément peut être indéfini. S'il vous plaît vérifier ces articles de retour sans modifier ni ne rien retourner
Stackoverflow.com/questions/16261348 / ...