适合 Ionic 3 的本地存储

Posted

技术标签:

【中文标题】适合 Ionic 3 的本地存储【英文标题】:Appropriate Local Storage for Ionic 3 【发布时间】:2018-03-19 16:02:17 【问题描述】:

我正在阅读有关本地存储的信息,我很困惑。我看到有两种选择:

原生存储,导入 NativeStorage 离子存储,导入 IonicStorageModule 我的应用程序是使用 Ionic 3 开发的,我试图在从 Parse Server 检索对象后将其保存在本地。

使用 Ionic 1,我这样存储对象数组:

setUsers (users)
    window.localStorage.users_data = JSON.stringify(users);

getUsers()
   return JSON.parse(window.localStorage.users_data || '[]');

那么现在,保存我的数据并对其进行字符串化和解析的最佳选择是什么?

原生存储还是离子存储?

非常感谢

【问题讨论】:

【参考方案1】:

您可以在这里轻松使用 Ionic storage 模块。你只需要安装SQLite 插件。详细信息在上面的文档中。然后你也可以在 iosandroid 上原生使用它,没有任何问题。

用法:

 // set a key/value
  storage.set('name', 'Max');

  // Or to get a key/value pair
  storage.get('age').then((val) => 
    console.log('Your age is', val);
  );

【讨论】:

谢谢 Sampath。但是为什么更喜欢 IonicStorage 而不是 NativeStorage? 因为它是Ionic Team 的一个模块,并且他们通过框架更改来维护它。他们推荐它与Ionic 一起使用。但另一个插件是第 3 方插件。不保证可维护性。 我可以将它用于 Ionic 3 和 Firebase 项目吗? 是的,你可以,这是一个通用模式。您只需要按照上述步骤操作即可。@metalhead101【参考方案2】:

现在我使用 ionic 4,我遇到了 @ionic/storage 模块的令人不快的延迟,但在我切换到 @ionic-native/native-storage 之后> 我有更好的表现。顺便说一句,您仍然可以在使用 ionic cordova run browser 命令而不是 ionic serve 命令对浏览器进行测试时使用它。

所以我想说的是,原生插件总是在性能方面获胜。

最好的祝福

【讨论】:

以上是关于适合 Ionic 3 的本地存储的主要内容,如果未能解决你的问题,请参考以下文章

ionic 3 中的本地存储和选项卡菜单

从 ionic2 本地存储中删除数组

使用 Ionic 的本地存储

ionic 运用pouchdb/sqlite 数据库做本地存储

Ionic/Angular:在本地存储中读写数组

Cordova/Phonegap/Ionic App - 远程图像的本地存储