gpt4 book ai didi

javascript - 如何同时获得 IndexedDB 数据库的旧版本和新版本,同时满足 setVersion 和 onUpgradeNeeded?

转载 作者:行者123 更新时间:2023-11-29 22:20:50 25 4
gpt4 key购买 nike

已经有这样的问答

Add Index to Pre-Existing ObjectStore In IndexedDB Using Javascript

但我看不出该代码如何满足 setVersion 和 onUpgradeNeeded 方法的增量版本。类似于以下伪代码..

<br/>
if (oldVersion < 1)
<br/>createObjectStore
<br/>if (oldVersion < 2)
<br/>createNewIndex
<br/> etc etc etc...

即我知道如何为 setVersion 方法获取旧版本(检查 db.serVersion 是否存在,然后查询 db.version 的值),但我不知道如何为较新的 onUpgradeNeeded 方法获取旧版本。

http://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#request-api 看并不明显要么 :-(

谢谢。

最佳答案

好吧,有几种方法。首先是数据库的新版本,就是你打开数据库时提供的版本号。

var version = 2;
var request = indexeddb.open("name", version)

所以如果你使用一个变量,你可以这样做。但是onupgradeneeded事件也提供了eventdata

request.onupgradeneeded = function (e) {
var transaction = request.result;
var oldVersion = e.oldVersion;
var newVersion = e.newVersion;
};

如您所见,事件数据作为参数传递给 onupgradeneeded 回调

关于javascript - 如何同时获得 IndexedDB 数据库的旧版本和新版本,同时满足 setVersion 和 onUpgradeNeeded?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12531027/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com