Dexie noobはここにあります。私はDexie.jsを使用してIndexedDBからデータを取得しようとしています。私はバッチでデータを取得したい(ページネーションと思う)、最初のクエリだけが動作しているようです。ここでオフセットとリミットが定義されている場合、Dexieのクエリは何も返しません。
はデータです:
db.friends
.orderBy('age')
.limit(2)
.offset(0)
.toArray()
.then(function(result) {
// Works as expected!
});
とクエリ#2空[]
を返します:
db.friends.bulkAdd([
{name: "David", age: 42},
{name: "Neil", age: 37},
{name: "Freddie", age: 36},
{name: "Elvis", age: 56},
{name: "Calvin", age: 22},
]);
そしてここでは、クエリ#1です
db.friends
.orderBy('age')
.limit(2)
.offset(2)
.toArray()
.then(function(result) {
// result is []
});
私はlimit(2)
のままにした場合クエリ#2からクエリは期待通りに機能しますが、offset()
と一緒には動作していないようです。
私はここで間違っていますか?私はおそらく、DexieやIndexedDBの仕組みに非常に基本的なものを見逃していますが、誰かが私を助けることができますか?
これは、これをテストするためにa JSFiddleです。
Davidさんに感謝して、問題を解決してください!私はコードに何か単純な間違いがあったと確信していましたが、私はそれがこの単純だとは思わなかった:) – ckdaw