usuwanie znacznika po kliknieciu w przycisk - usuwa nie to co potrzeba

0

Chciałbym usuwać marker po kliknięciu, stworzyłem przycisk w popup, ale po kliknieciu w ten przycisk usuwa mi sie sam popup a marker zostaje, czy ktoś może mi pomoc rozwiazać ten problem ?

state = {
       newItems: [{Description: "opis...",  Name: "Pierwszy", X: 255,Y:100}],
}
  componentDidMount() {
 const map = new mapboxgl.Map({
      container: this.mapContainer,
      style: 'mapbox://styles/mapbox/streets-v11',
      center: [50, 100],
      zoom: 10,
    })
 
   for (const obj of newItems) {
      let myLatlng = new mapboxgl.LngLat(obj.X, obj.Y);
      new mapboxgl.Marker()
        .setLngLat(myLatlng)
        .setPopup(new mapboxgl.Popup({ offset: 25 })
          .setHTML('<h3>' + obj.Name + '</h3><p>' + obj.Description + '</p><button onclick=(function(){event.target.parentNode.remove})();>Remove Marker</button>'
          ))
        .addTo(map);
    }
    }
0

Zgadza się, usuwasz parentNode czyli rodzica guzika, a nie marker.

0

wiesz może jak przekierować to na marker?

0

Otwórz narzędzie programistyczne w przeglądarce F12 i sprawdź gdzie jest marker w stosunku do button w popupie. Być może wystarczy wybrać rodzica popupa.

event.target.parentNode.parentNode.remove

1 użytkowników online, w tym zalogowanych: 0, gości: 1