我有一个离子存储数据库,具有以下键/值对: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
的新键/值。 最佳答案
像这样的事情呢:
// 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));
});