设置不起作用。获取不起作用。我甚至无法在iOS上获得驱动程序名称。调用“就绪”不起作用。电话只是不回来。承诺没有兑现。这就像是一个虚空。
Android和Chrome上的离子存储工作正常。
这些是我安装的插件:
cordova-plugin-device 1.1.4 "Device"
cordova-plugin-splashscreen 4.0.3 "Splashscreen"
cordova-plugin-statusbar 2.2.2 "StatusBar"
cordova-plugin-whitelist 1.3.1 "Whitelist"
ionic-plugin-keyboard 2.2.1 "Keyboard"
onesignal-cordova-plugin 2.2.1 "OneSignal Push Notifications"
cordova-sqlite-storage 2.0.4 "Cordova sqlite storage plugin"
cordova-plugin-inappbrowser 1.7.2 "InAppBrowser"
cordova-plugin-calendar 5.0.0 "Calendar"
cordova-plugin-compat 1.0.0 "Compat"
cordova-plugin-network-information 1.3.4 "Network Information"
cordova-plugin-add-swift-support 1.7.0 "AddSwiftSupport"
cordova-plugin-ionic 2.0.4 "IonicCordova"
cordova-plugin-background-mode 0.7.2 "BackgroundMode"
这是我如何使用它的想法。请注意,我的代码在Android和Chrome中运行良好。
import { Storage } from '@ionic/storage';
this.platform.ready()
.then(()=>{
this.storage.ready()
.then(() => {
this.storage.get(name)
.then((value)=>{
我也使用捕获来捕获错误,但没有。它就死了。 “storage.ready”甚至没有回来。
在我的app.module.ts中,我将这些行放在正确的位置:
import { IonicStorageModule } from '@ionic/storage';
IonicStorageModule.forRoot(),
有什么想法吗?我的头因撞在墙上而受伤。
答案 0 :(得分:0)
我遇到过类似的问题。要测试你的.ts中的最新情况
this.storageEngine = localStorage.storage.driver;
然后在您的HTML文件中
{{ storageEngine }}
我怀疑问题是,它试图使用indexeddb,在移动设备上使用sqlite来防止垃圾收集擦除数据。
第1步:
ionic cordova plugin add cordova-sqlite-storage
第2步:app.module.ts
IonicStorageModule.forRoot({
name: '__yourapp-localstorage',
driverOrder: ['sqlite','indexeddb', 'websql']
}),