更新Ionic Storage键/值对中的数组部分

时间:2017-03-18 15:49:10

标签: angular typescript ionic-framework ionic2 ionic3

我有一个带有以下键/值对的Ionic Storage DB:

Key: settingsJSON Value: {toggleDates: false, toggleIndicator: false, toggleRepayments: false}

有没有办法更新数组的一部分(即将toggleDates设置为true)而不会覆盖存储在值中的其余数组?

我试过了:

 let settingsTemp = JSON.stringify({toggleDates: true});
 this.storage.set('settingsJSON', settingsTemp)

但是这会将整个数组更新为{toggleDates: true}

我也尝试过:

this.storage.set('settingsJSON.toggleDates', true)

但这只会创建一个名为settingsJSON.toggleDates的新键/值。

1 个答案:

答案 0 :(得分:7)

这样的事情:

// Get the entire data
this.storage.get('settingsJSON').then(valueStr => {
    let value = JSON.parse(valueStr);

     // Modify just that property
     value.toggleDates = true;

     // Save the entire data again
     this.storage.set('settingsJSON', JSON.stringify(value));
});