我正在使用IndexedDb存储一个人的城市,电子邮件ID和created_at。 我想让某个城市的所有人都使用有效的电子邮件,并按created_at日期排序。
我有一个像这样的复合索引查询:
var city = "chennai";
var index_name = "city, " + "email, " + "created_at";
var index = store.index(index_name);
var boundedKeyRange = IDBKeyRange.bound([city, "", 0], [city, ??, ""]);
index.openCursor(boundedKeyRange, "prev").onsuccess = function(e) {
var cursor = e.target.result;
if (cursor) {
// Check if email is valid and add it to an array
}
else {
// resolve a promise
}
}
我遇到的问题是我不知道如何设置电子邮件ID的“上限”,因为@是一个特殊字符我不确定设置上限以在查询中包含所有电子邮件ID。
谢谢
迪帕克
答案 0 :(得分:1)
字符串的上限可以视为'\uFFFF'
或[]
。
无论如何,您的查询将无效,因为您有两个范围查询,“email”和“created_at”。您只能有一个键范围查询。