我需要使用indexedDb进行本地存储。
打开indexedDb时,会传递版本,我认为这表明是否需要升级。有人可以解释一下这里发生了什么,特别是版本的重要性,从哪里获得版本以及升级是什么?
例如:
import 'dart:indexed_db' as idb;
final int _iDbVersion = 1;
void fOpenDb(String sDbName) {
var request = window.indexedDB.open(sDbName, _iDbVersion);
request.on.success.add((e) => fDbOnOpened(request.result));
request.on.error.add(fDbOnOpenError);
request.on.upgradeNeeded.add((e) => fDbOnUpgradeNeeded(request.transaction));
}
答案 0 :(得分:0)
我发现这个有趣的描述在我看来基本上是正确的。 :
索引资料:
DATABASE
对于每个来源,您都可以创建无限数量的数据库。创建数据库唯一需要的是一个唯一的名称。一个数据库也有一个版本,这个版本将用于确定数据库的结构。首次创建数据库时,该版本将为空字符串。每个数据库一次只能有一个版本,这意味着数据库不能同时存在多个版本。
VERSION
可以更改对象存储集,但只能使用Version_change事务进行更改。此事务将更改数据库的版本并更改您定义的对象存储集。