2015-08-18 13 views
7

Mam kolumnę, w której wyświetlam wiadomość e-mail użytkownika, dodałem do niej funkcję sortowania. Jednak wynikowa tablica nie jest poprawnie sortowana.Problem podczas sortowania wartości wiadomości e-mail przy użyciu niestandardowej funkcji sortowania AngularJS

Sample code is here

Każda pomoc zauważyć

<ul ng-repeat="user in users | orderBy:'email':false"> 

W kodzie przykład, wyjście sortowania [rosnące] jest

a[email protected]
ABC @ abc.com
[email protected]

Ale wyjście Oczekuje

[email protected]
[email protected]
[email protected]

+1

proszę umieszczać wszelkie istotne kod w pytaniu i zapewnić oczekiwane rezultaty. Co oznacza "nie posortowane prawidłowo"? Demo wydaje się działać – charlietfl

+1

Sortowanie jest całkiem poprawne w twoim kodzie. jego sortowanie alfabetycznie: – Hmahwish

+0

'['[email protected]', '[email protected]', '[email protected]']. sort()' produkuje tę samą kolejność. Nie ma nic wspólnego z kątowym samym – charlietfl

Odpowiedz

2

Podpowiedź jest użycie funkcji sortowania niestandardowego i "wyciąć" wiadomość e-mail pod symbolem @. W przeciwnym razie cały ciąg będzie porównywany, a wartość @ będzie większa niż wartość +.

Jeśli chcesz tylko dopasować Usernames powinieneś być w porządku. W przeciwnym razie musisz również porównać domeny, zanim porównasz Usernames.

Oto JS Fiddle: http://jsfiddle.net/zjvsu/898/

+0

Edytowałem twoją odpowiedź, aby dołączyć link do JS fiddle. :-) – onebree

+0

Dzięki. To zadziałało dla mnie ... :) –

+0

Dzięki za opinie i edycję;) Cieszę się, że mogłem pomóc :) – Erik

Powiązane problemy