存储到目前为止正常使用的应用程序中,所有数据在更新中均已消失。 @ ionic /存储版本或ionic版本没有任何变化。
此外,在数据消失后创建的数据将正常保存。 在什么条件下初始化Storaage数据?
"@ionic/storage": "2.0.0"
--- Ionic Info ---
Ionic:
ionic (Ionic CLI) : 4.0.1 (C:\Users\xxxxx\AppData\Roaming\npm\node_modules\ionic)
Ionic Framework : ionic-angular 3.9.2
@ionic/app-scripts : 3.1.11
Cordova:
cordova (Cordova CLI) : not installed
Cordova Platforms : android 6.3.0, ios 4.5.4
System:
Android SDK Tools : 26.1.1
NodeJS : v8.11.3 (C:\Program Files\nodejs\node.exe)
npm : 6.2.0
OS : Windows 7
Environment:
ANDROID_HOME : C:\Users\xxxxx\AppData\Local\Android\Sdk
答案 0 :(得分:0)
Ionic Storage是localForage库的“包装器”,它在后台(通过“驱动程序”)包装了不同的持久性解决方案。如果离子存储在设备上以混合方式(cordova应用程序)运行,则唯一的“保证”持久性是SQLite。其他基于浏览器的驱动程序(indexeddb或websql)根据特定的浏览器允许保留数据。而且这种基于浏览器的持久性并不能真正“保证”,因为它受以下条件的约束:
总的来说,除非您使用SQLite-将此离子存储视为某种持久性缓存...
还请记住,Ionic Storage可以在某一时刻使用一种可用的存储类型,然后在条件发生变化时切换到另一种存储方式,从而使您的数据在websql中仍然可用,但由于应用程序可能已切换到indexeddb而无法访问。为了避免严格控制可用的驱动程序及其优先级/初始化的顺序,