0

我无法对 dexie 表进行排序。

我可能只是不理解 dexie 表与 dexie 集合之间的简单概念差异。所以我很抱歉问了一个简单的问题。

我有这段代码可以正常工作:

1 db.transaction('r', db.TABLE1, function() {
2   return db.TABLE1.where('FIELD1').equals('VALUE1').toArray();
3 }).then(function (passedvar) {
4   for (i=0; i < passedvar.length; i++) {
5     // Do things with passedvar[i]
6   }
7 }).catch...

我想要做的是用这段代码替换第 2 行,但它不起作用:

return db.TABLE1.where('FIELD1').equals('VALUE1').reverse().sortBy('FIELD1').toArray();

所以我的目标只是对 .where 查询的结果进行降序排序。如果上面的代码可以修改,那就太好了。如果我做错了并且有更好的方法,那也很好。

谢谢大家,弗兰克

4

1 回答 1

0

回答我自己的问题。问题是我认为我需要 .toArray() 才能遍历返回的值。我不。

所以,去掉 .toArray() ,一切都完全按照Dexie文档所承诺的那样工作。

这是我在第 2 行得到的结果

return db.TABLE1.where('FIELD1').equals('VALUE1').reverse().sortBy('FIELD1');

而已!

坦率

于 2017-07-03T02:00:48.723 回答