【发布时间】:2015-09-10 08:16:35
【问题描述】:
我正在使用 Ionic 框架构建一个 Cordova 应用程序。我使用angular-localForage 作为应用持久存储的本地数据库。
在开发过程中,我在 Windows 10 上使用 Google Chrome 45.0.2454.85 m 测试我的应用程序。angular-localForage 版本为 1.2.3,localForage 版本为 1.2.4。
我可以设置和检索数据没有问题。设置我正在使用的数据:
$localForage.setItem(myKey, myData).then(myCallbackFunction);
根据docs,localForage 应该在 IndexedDB 可用的情况下使用它,而对于不可用的浏览器则回退到 WebSQL。通过查看 Chrome 开发者工具中的资源,我可以看到它将我的数据存储在 WebSQL 中。
如果我将此代码放入我的控制器中,我会收到一条消息说 IndexedDB 可用:
if (!window.indexedDB) {
window.alert("Your browser doesn't support a stable version of IndexedDB. Such and such feature will not be available.");
} else {
window.alert("IndexedDB available.");
}
我的问题是,当我有 IndexedDB 可用时,为什么它在 Chrome 中使用 WebSQL?
【问题讨论】:
-
如果设置驱动程序是 localforage.INDEXEDDB,可以检查您的 localforage 配置
-
检查他们如何测试对 IndexedDB 的支持,不仅仅是 window.indexedDB。 github.com/mozilla/localForage/blob/master/src/…
-
为回复干杯。虽然在代码中看不到任何使其无法在 Chrome 中运行的内容...
标签: javascript angularjs google-chrome indexeddb localforage