【发布时间】:2017-08-23 17:19:16
【问题描述】:
我有一个使用 Dexie 的工作应用程序。升级到 iOS 10.3 后,按键查找不起作用。 (这实际上是一个 indexeddb 问题,而不是 Dexie 本身,我敢肯定。)我仍然感到震惊,但我已经能够通过执行 db.table.each(function(p) { },并且键中使用的字段在那里并且正确。但是如果我这样做 db.table.get(primarykey, function(p) {} 要么 db.table.where("somekey").equals(nonprimarykey).first(function(p) {} p 未定义。
我尝试做 .db.table.each 然后将每个检索到的对象放回去,看看是否会重建密钥,它在 Firefox 中工作,但在 Safari 或 Chrome 中不起作用(仍然无法通过钥匙)。
我还尝试指定具有相同密钥结构和空升级的新版本,但没有做任何事情(但我只在 Chrome 中尝试过)。
如果数据库是在安装 10.3 之后创建的,一切都很好,但我希望我的客户不必删除他们的数据库。
有什么方法可以在不丢失数据的情况下修复这个问题?
【问题讨论】:
标签: ios indexeddb dexie ios10.3