我如何同时将此对象添加到数组中,并将同一数组中每个其他对象(如果有)的属性popup
更改为false
?
this.setState({
map: {
...this.state.map,
areas: this.state.map.areas.concat({
coords: [evt.nativeEvent.layerX, evt.nativeEvent.layerY, 15],
popup: true,
})
}
});
答案 0 :(得分:1)
您不能同时执行此操作,但是可以使用Object.assign
方法和map
来将popup
属性设置为false
,然后concat
new 项。
areas: this.state.map.areas.map(item => Object.assign(item, {popup: false})).concat({
coords: [evt.nativeEvent.layerX, evt.nativeEvent.layerY, 15],
popup: true,
})