У меня есть набор JSON с несколькими объектами, массивами, строками, логическими значениями, числами и т. Д., Которые хранятся в одном объекте на корневом уровне и в компоненте.
Вот пример:
{
"theme": {
"auto": {
"sensor": "sensor.sn1_ldr",
"below": 600
},
"ui": {
"cards": {
"round": false,
"elevation": 1
}
},
...
},
...
}
Мне удалось передать путь и новое значение элемента в массиве, например, так:
["theme", "auto", "sensor"]
Как мне установить новое значение этого пути?то есть.эквивалент:
config.theme.auto.sensor = newValue;
, но с использованием возвращенного массива пути?
Метод, который у меня пока есть:
handleConfigChange = (path, value) => {
console.log(path, value);
let config = this.state.config;
// Set the new value
this.setState({ config });
};