我有一个带有以下键/值对的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
的新键/值。
答案 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));
});