J'essaie de créer des polygones dynamiques en utilisant l'état de réaction, mais les polygones de folioles ne sont pas rendus.Les polygones React-Leaflet ne sont pas rendus de nouveau
La cible est de créer un polygone que l'utilisateur crée en cliquant sur la carte.
class SimpleExample extends React.Component {
constructor() {
super();
this.state = {
positions: [[51.505, -0.09]]
};
}
addPosition = (e) => {
const {positions} = this.state
console.log('Adding positions', positions)
positions.push([e.latlng.lat, e.latlng.lng])
this.setState({positions})
}
render() {
console.log('Should render new positions', this.state.positions)
const staticPositions = [[51.505, -0.09], [51.4958128370432, -0.10728836059570314], [51.49602657961649, -0.09956359863281251]]
return (
<Map
center={[51.505, -0.09]}
onClick={this.addPosition}
zoom={13}
>
<TileLayer
attribution='© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
url='http://{s}.tile.osm.org/{z}/{x}/{y}.png'
/>
<Polygon positions={this.state.positions} color="blue" />
<Polygon positions={staticPositions} color="red" />
<Polyline positions={this.state.positions} />
</Map>
);
}
}
S'il vous plaît checkout ce violon: https://jsfiddle.net/cesargdm/j2g4ktsg/1/
pouvez-vous donner plus de détails sur ce que vous essayez d'accomplir? –
Bien sûr, je veux juste créer un polygone que l'utilisateur crée, en cliquant sur la carte. Il s'agit des clics de l'utilisateur dans la carte, et les coordonnées sont sauvegardées dans l'état, le polygone obtient ses coordonnées. – cesargdm
Edgar Enriquez :) – cesargdm