Ionic2 存储数据丢失的原因是什么?

Ionic2 存储数据丢失的原因是什么?,ionic2,ionic-storage,Ionic2,Ionic Storage,到目前为止,在正常使用的应用程序中,所有数据都已在更新中消失。@IONAL/存储版本或IONAL版本没有变化 此外,在数据消失后创建的数据将正常新保存。 初始化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 Fr

到目前为止,在正常使用的应用程序中,所有数据都已在更新中消失。@IONAL/存储版本或IONAL版本没有变化

此外,在数据消失后创建的数据将正常新保存。 初始化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
Ionic Storage是LocalFow库的“包装器”,它将不同的持久性解决方案包装在引擎盖下(通过“驱动程序”)。如果离子存储作为混合设备(cordova应用程序)在设备上运行,唯一“保证”的持久性是SQLite。其他基于浏览器的驱动程序(indexeddb或websql)根据特定的浏览器允许保留数据。而这种基于浏览器的持久性并不是真正的“保证”,因为它受到以下因素的影响:

  • 浏览器报价(浏览器允许网站使用多少磁盘空间) 存储(用于)
  • 浏览器模式(如可阻止本地存储等的隐私模式)
  • 浏览器需要为另一个站点使用空间(例如,它可以开始从应用程序中删除数据)
所以总的来说,除非您使用SQLite,否则请将此离子存储视为某种类型的持久缓存


还要记住,Ionic Storage可以在某一点上使用一种可用的存储类型,然后在条件发生变化时切换到另一种类型,从而使您的数据在websql中仍然可用,但无法访问,因为您的应用程序可能已切换到indexeddb。为了避免这种情况,最好严格控制可用驱动程序及其优先顺序/初始化

离子存储可用于不同类型的dbs。。你用的是哪一种?用的是离子存储。它不是SQLite等。