在 Ionic 5 中设置数组对象的存储

问题描述

我有一个 ionic 5 应用程序要为浏览器构建。我已经安装了@ionic/Storage等,我的服务中有一个函数,当前迭代如下:

async setStorageObj( key: string,values: any) {
console.log(key,values);
return this.storageCtrl.set( key,values );

}

"key"一个单一的字符串 "product attributes" 而 values 是一个数组对象(我认为)。在开发者控制台中看起来像这样: 产品属性: [sportsdemo_x_xxx: [{键:值对},{键:值对},{键:值对}],sportsdemo_y_yyyyy: [{key:value 对},{key:value 对}],...etc]

上面的控制台日志在控制台中显示正确,所以我知道值在那里。然而,它在存储中显示"ProductAttributes: []。我根本无法弄清楚正确的语法。 我已经有一段时间了,但很晚了……也许我只是累了。您的帮助将不胜感激。

解决方法

我想出了两个解决这个问题的方法:

  1. 遍历数组对象并设置每个数组

    for (k in object) { 
       this.storageCtrl.set (k,object(k)); }
    

  1. 我采用的解决方案:

    async setStorageObj( values: any[]) {
        return await this.storageCtrl.set("productAttributes",JSON.stringify(values));
    }