Jak sortować, używając wielu pól jednocześnie pod kątem? pięść według grupy, a następnie według podgrupy na przykład
$scope.divisions = [{'group':1,'sub':1}, {'group':2,'sub':10}, {'group':1,'sub':2},{'group':1,'sub':20},{'group':2,'sub':1},
{'group':2,'sub':11}];
Chciałem wyświetlić to jako
grupa: podgrupa
1 - 1
1 - 2
1–20
2 - 1
2–10
2–11
<select ng-model="divs" ng-options="(d.group+' - '+d.sub) for d in divisions | orderBy:'group' | orderBy:'sub'" />
orderBy:['-group','sub']
do sortowaniagroup
w odwrotnej kolejności.Jeśli chcesz sortować według wielu pól wewnątrz kontrolera, użyj tego
Zobacz także https://docs.angularjs.org/api/ng/filter/orderBy
źródło
Tablica użytkownika zamiast wielu zamówień BY
źródło
Sortowania można dokonać za pomocą filtra „orderBy” w układzie kątowym.
Dwa sposoby: 1. Z widoku 2. Z kontrolera
Składnia:
Na przykład:
Składnia:
Na przykład:
źródło
Istnieją dwa sposoby wykonywania filtrów AngularJs, jeden w HTML przy użyciu {{}} i jeden w rzeczywistych plikach JS ...
Możesz rozwiązać problem za pomocą:
jeśli użyjesz go w HTML lub użyjesz czegoś takiego:
Odwrotność jest opcjonalna na końcu, przyjmuje wartość logiczną, a jeśli to prawda, odwróci tablicę dla ciebie, bardzo przydatny sposób na odwrócenie tablicy ...
źródło
Napisałem ten przydatny kawałek do sortowania według wielu kolumn / właściwości obiektu. Przy każdym kolejnym kliknięciu kolumny kod przechowuje ostatnią klikniętą kolumnę i dodaje ją do rosnącej listy nazw ciągów klikanych kolumn, umieszczając je w tablicy o nazwie sortArray. Wbudowany filtr Angular „orderBy” po prostu odczytuje listę sortArray i porządkuje kolumny według kolejności przechowywanych tam nazw kolumn. Tak więc ostatnia kliknięta nazwa kolumny staje się filtrem pierwotnie uporządkowanym, poprzedni kliknął następny z pierwszeństwem itp. Odwrotna kolejność wpływa na kolejność wszystkich kolumn jednocześnie i przełącza rosnąco / malejąco dla kompletnego zestawu list tablic:
źródło
Utworzono rurę do sortowania. Akceptuje zarówno ciąg znaków, jak i tablicę ciągów, sortując według wielu wartości. Działa dla Angular (nie AngularJS). Obsługuje zarówno sortowanie według ciągów, jak i liczb.
źródło
Upewnij się, że sortowanie nie jest skomplikowane dla użytkownika końcowego. Zawsze myślałem, że sortowanie według grup i podgrup jest trochę skomplikowane do zrozumienia. Jeśli jest to techniczny użytkownik końcowy, może być OK.
źródło