google-maps -реагирует на добавление маркера - PullRequest
0 голосов
/ 05 мая 2020

Я использую библиотеку google-maps -react, чтобы добавить карту Google с маркерами, которые обновляются при изменении состояния.

Я хочу динамически добавлять маркеры после получения местоположений из api места Google и сохранения их в штат. Я получаю данные, добавляю их в состояние, затем вызываю displayMarkers:

displayMarkers = () => {
    this.state.newStations.map((station, index) => {
      let lat = station.geometry.location.lat();
      let lng = station.geometry.location.lng();
      return (
        <Marker
          key={index}
          id={index}
          position={{
            lat: lat,
            lng: lng,
          }}
          onClick={() => console.log("You clicked me!")}
        />
      );
    });
  };

Состояние обновляется, но маркеры не отображаются на карте.

Чтение do c для google-maps -react, мне кажется, что маркер должен быть дочерним элементом карты, чтобы его можно было наложить на карту.

Маркер Чтобы разместить маркер на карте, включите его как дочерний элемент компонент.

Есть ли способ вернуть маркер как дочерний элемент Map?

В API карт Google кажется, что вы можете сделать это так:

var marker = new google.maps.Marker({
    position: myLatLng,
    map: map,
    title: 'Hello World!'
  });

Вы передаете карту значений, которая является картой, sh которой вы хотите прикрепить или наложить свой маркер. Опора «карта» существует в google-maps -реакте, но, похоже, в Маркер нет свойства, которое принимает карту.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...