Я пытаюсь установить маркер на карте gl mapbox, щелкнув карту, а затем передаю объект lngLat обратно родительскому компоненту. Подскажите, пожалуйста, как я могу это сделать. Я новичок в изучении реакции, но знаю, что свойства могут быть унаследованы только от родительского класса, а setState устанавливает только локальное состояние.
// add a marker when user clicks a point
map.on("click", "random-points-layer", e => {
if (e.features.length) {
const feature = e.features[0];
document.getElementById('info').innerHTML =
// e.point is the x, y coordinates of the mousemove event relative
// to the top-left corner of the map
JSON.stringify(e.point) +
'<br />' +
// e.lngLat is the longitude, latitude geographical position of the event
JSON.stringify(e.lngLat.wrap());
//----------------------------------------------------------------------------------------------------
// add a marker to the map
var marker = new mapboxgl.Marker().setLngLat(e.lngLat).addTo(map);
//----------------------------------------------------------------------------------------------------
}
});
Родительский компонент выглядит так
render() {
<div>
<h1>Activate a beacon<h1/>
<Map/>
<div/>
}
Я следую этому руководству https://github.com/laneysmith/react-mapbox-example