我有一个模拟的 indexedDB 包含如下项目:
{
id:1002,
name:"Frank",
company: "dg",
age:30
}
我已经创建了索引 ['name','age','company'] ,只是想像 websql 那样得到我需要的结果。
getMultipleDataByRange function 定义获取项,我设置['0',24,'ef']
作为 lowerBound
和 ['z',24,'ef']
作为 upperBound
,我认为它应该显示与项目匹配的结果谁是 24 岁再加上他的公司是“ef”。但是结果显示所有项目都符合我设置的范围。如何设置范围以获得正确的结果。
也可以通过我生成的 JSBIN 链接查看代码:
最佳答案
如果您更改索引的顺序,使变化的部分(名称)位于末尾,它就会起作用。如果您想知道原因,请参阅 In IndexedDB, is there a way to make a sorted compound query?了解复合索引在 IndexedDB 中的工作原理。
关于javascript - 为什么我无法通过IndexedDB 中的IDBKeyRange.bound 函数得到正确的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37302019/