1

我需要使用 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));
}
4

1 回答 1

0

我发现这个有趣的描述在我看来基本上是正确的。:

索引数据库:
数据库

对于每个来源,您都可以创建无限数量的数据库。创建数据库唯一需要的就是一个唯一的名称。一个数据库也有一个版本,这个版本将用来确定数据库的结构。首次创建数据库时,版本将为空字符串。每个数据库一次只能有一个版本,这意味着数据库不能同时存在多个版本。

版本

对象存储集可以更改,但只能通过使用 Version_change 事务进行更改。此事务将更改数据库的版本并更改您定义的对象存储集。

于 2013-01-26T03:33:51.160 回答