Получая множество консольных ошибок при загрузке карты. Например проблема с withHandlers. Интересно, почему?
ользуюреагировать-Google-карты чтобы отобразить карту с маркерами, и когда вы нажимаете на маркер, все информационные окна открываются. Я бы хотел, чтобы при нажатии на него отображалось только одно информационное окно маркера, а остальные оставались закрытыми.
Вот мой код:
<GoogleMap
defaultZoom={15}
defaultCenter={{ lat: 51.508530, lng: -0.076132 }}
>
{props.places && props.places.map((place, i) =>
<Marker onClick={props.onToggleOpen} key={i} position={{ lat: place.geometry.location.lat(), lng: place.geometry.location.lng() }} >
{props.isOpen && <InfoWindow onCloseClick={props.onToggleOpen}>
<div>{place.name}</div>
</InfoWindow>}
</Marker>
)}
</GoogleMap>
И я открываю и закрываю InfoWindow с этим
import { compose, withProps, withStateHandlers, withHandlers, withState } from "recompose";
...
withStateHandlers(() => ({
isOpen: false,
}), {
onToggleOpen: ({ isOpen, id }) => () => ({
isOpen: !isOpen,
})
}),
Я сопоставляю все маркеры и отображаю их на карте. Как я могу открыть один маркер InfoWindow?Вот связанный вопрос, но это не сделано с React и не использует response-google-maps.