реагировать компонент карты Google не правильно встраивает в родительский - PullRequest
0 голосов
/ 30 сентября 2019

Моя карта Google в реакции встроена в родительский компонент. Проблема заключается в том, что он неправильно внедряется в родительский компонент: он как бы нависает над следующими элементами в родительском компоненте: его высота не распознается, поэтому последующие элементы отображаются под картой. Также кнопки под картой не активируются, даже когда отображаются под картой. Когда он не расположен по центру под картой (но отображается слева или справа под ним), на него можно нажать. Вот скриншот перекрытия карты:

the map overlaps its current div (goes over the pink border)

Я использую пакет google-maps-реакции. Может ли быть проблема с этим? Вот мой код родительского компонента:

return (
  <IntroBox>
    <div style={rangeStyle}>
    <center>
      <MapContainer
        latLng={this.state.latLng}
        latLngChange={latLng => {
          this.setState({ latLng: latLng });
        }}
      />
    </center>
  </div>
  <Button onClick={this.handleSubmit.bind(this)}>Submit</Button>
</IntroBox>

Код дочернего (MapContainer) компонента:

import { Map, GoogleApiWrapper, Marker, InfoWindow } from "google-maps-react";


const mapStyles = {
  width: "50%",
  height: "400px"
};

const MapBox = styled.div`
  justify-content: center;
  alignitems: "center";
  background: white;
  width: 50%;
  height: "400px";
`;

... extending react component, and returning: ...

<MapBox>
        <Map
          google={this.props.google}
          mapTypeControl={false}
          streetViewControl={false}
          fullscreenControl={false}
          zoom={13}
          style={mapStyles}
          initialCenter={{ lat: this.state.lat, lng: this.state.lng }}
          onClick={(x, y, lat, lng, event) =>
            this.changeMarker(x, y, lat, lng, event)
          }
        >
          <Marker
            position={{ lat: this.props.latLng[0], lng: this.props.latLng[1] }}
          />
        </Map>
      </MapBox>

Есть идеи о том, что я делаю неправильно?

Спасибо!

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