离子存储实现:获取和设置

ionic Storage implemenation: get and set

我正在尝试了解如何从离子存储中获取和检索数据,我需要一些帮助,因为我是新手。

假设我有一行将以下 JSON 文档设置为存储键:

 person = [
     { "id": "0001", 1:"name", 2:"gender", 3: "age":"5"},
     { "id": "0002", 1:"name", 2:"gender", 3: "age":"5"}
    ]

使用 storage.set('persons', persons),我可以将 JSON 的值设置为离子存储的 persons 键。

当我想更改JSON文件的第二项"id": 0002时,我是否应该将整个JSON读入内存,搜索0002并修改然后发送回一个新鲜 JSON 文档到离子存储?或者有更好的方法?

提前致谢。

Ionic Storage 基于 localForage 库,是一个简单的 key/value 存储。

根据您的示例,此存储有 2 个选项:

  1. 如果 person(s) 对象的整体大小相对较小,您确实可以将整个对象存储为一个值。这意味着如果您需要更改对象(或数组)内的项目 - 您必须获取完整对象(包含所有人数据),更改项目,将其作为整个对象再次持久化(设置)

  2. 如果您希望进行大量此类操作并且数据量会增加,您可以通过“拆分”您的对象并为每个“人”项目使用不同的键作为值来解决这个问题:

storage.set(“persons_person00”, 人[0])

此方法要求您仔细考虑您的键命名约定,因为您希望与名称非常一致。

同样在后一种方法中,您可能需要使用 Storage 的 .forEach 方法,具体取决于您在初始化等过程中“读取所有”的需要

在我看来,最好的方法是滚动数组,更改特定项目,然后使用此更改设置新对象。