У меня есть повторение ng-повторения по набору объектов, требующим некоторых функций для извлечения значений, которые я хочу сортировать.angularjs orderBy с несколькими функциями, как отменить?
Мой нг-повтор выглядит следующим образом:
ng-repeat="row in rows | orderBy: [sortFnOne, sortFnTwo, ...]"
Что у меня возникли проблемы с, как я хотел бы sortFnOne быть отменено. Это извлечение строк, к которым я не могу получить доступ, используя простые атрибуты, поскольку он делает некоторое преобразование данных для создания этих значений, которые я пытаюсь сортировать.
Если бы это было просто, я знаю, что я бы просто сделать:
ng-repeat="row in rows | orderBy: ['-id', 'name', '-status', ...]"
Если эти функции были только возвращение булевой я только мог! возвращаемое значение, чтобы получить результат, который я хотел, но некоторые из них возвращают строки, а некоторые возвращают даты в формате YYYY-MM-DD.
Вы считали, что вместо этого вы просто написали пользовательский фильтр? В вашем случае стыдно, что флаг 'reverse' (т. Е. Второй аргумент), предлагаемый' orderBy', применяется только ко всему массиву. – miqid
I второй @miqid относительно фильтра. Возможно, вам стоит взглянуть на эту ссылку. Это может вам помочь. http://justinklemm.com/angularjs-filter-ordering-objects-ngrepeat/ –
Опубликовать плункер или скрипку с минимальным примером, тогда легче помочь –