在Dexie中,当需要升级模式或表架构时,可以使用db.version(X)
方法。
然后,库将检查用户的浏览器是否缓存了以前的版本,并执行相应的升级步骤。
但是我找不到如何手动读取当前用户的 *db版本 *。
例如,如果有目的地编写以下代码:db.version(1).stores(/* my schema */)
*//移除此程式码 *db.version(2).stores(/* my schema */)
库将礼貌地抛出一个错误,指出用户当前拥有的版本(显然,1
)没有模式。
但是,有没有办法读取用户拥有的"确切“版本?
它可能对调试有用!
2条答案
按热度按时间2eafrhcq1#
如果您只想检查数据库,可以跳过整个
version()
。例如,我可以使用以下代码打印数据库的版本号。请注意(如文档中所述),Dexie将通过
.version()
设置的版本号乘以10,因此,如果您在浏览器的调试器中检查数据库,您将看到一个数字,该数字是使用verno
field获得的数字的10倍。8yparm6h2#
在Dexie版本3+中,您可以用途:
Dexie.verno
:获取dexie版本,dexie版本是注册版本中的最高值。Dexie.idbdb.version
:获取IndexedDB
的本机版本。它是Dexie.verno
乘以10
。有关更多技术说明,请参阅here。