我有一堆带有多个对象、数组、字符串、布尔值、数字等的 JSON,它们存储在根级别和组件的一个对象中。
这是一个示例:
{
"theme": {
"auto": {
"sensor": "sensor.sn1_ldr",
"below": 600
},
"ui": {
"cards": {
"round": false,
"elevation": 1
}
},
...
},
...
}
我已经设法将项目的路径和新值传回数组中,如下所示:
["theme", "auto", "sensor"]
我如何从那里设置该路径的新值?IE。相当于:
config.theme.auto.sensor = newValue;
但是使用传回的路径数组?
我到目前为止的方法:
handleConfigChange = (path, value) => {
console.log(path, value);
let config = this.state.config;
// Set the new value
this.setState({ config });
};