Коллекция LokiJs находит список возврата в порядке возрастания
Как мне отсортировать коллекцию loki js в порядке возрастания
var categoryCollection = offlineDb.getCollection('Category');
var catColl = categoryCollection.find({ 'Id': { '$ne': null } });
Я отлаживаю и вижу, что $loki также в обратном порядке. Это возвращает список в обратном порядке! Как я могу выполнить поиск со списком в порядке возрастания? Разве это не по умолчанию, когда вы делаете возврат в порядке возрастания?
2 ответа
У вас есть два способа сортировки результата: либо передавая собственную функцию сортировки в sort(fun)
или используя simplesort(property [, isdesc])
вторым параметром является флаг возрастания / убывания. Смотрите здесь
Обратите внимание, что simplesort()
требует chain()
, который возвращает ResultSet
вместо стандартного Array
:
categoryCollection.chain().find({ 'Id': { '$ne': null } }).simplesort('Id');
Если вам просто нужно Array
с перевернутым заказом, используйте Array.reverse()
:
categoryCollection.find({ 'Id': { '$ne': null } }).reverse();
Если reverse()
все еще недостаточно, чтобы отсортировать данные, используйте chain(), simplesort(), data()
бутерброд, чтобы вернуть стандартный массив:
categoryCollection.chain().find({ 'Id': { '$ne': null } }).simplesort('Id').data();