когда я нажимаю один маркер, мне нужно увеличить два уровня, чтобы увидеть местоположение - PullRequest
0 голосов
/ 13 марта 2019
  • Я использую группу кластеров маркеров.
  • , с помощью которой я могу показать два маркера.
  • при нажатии на номер два, который красного цвета, вы увидите два маркера.
  • после этого, когда я щелкаю по одному маркеру, мне нужно увеличить два уровня, чтобы увидеть местоположение
  • Я написал маркерный щелчок для этого, и в этом я добавил увеличение и попытался также использовать подгонки, но это не увеличение.
  • мы использовали mapcenter, тогда он также не работал `
  • Вы можете сказать мне, как это исправить.
  • предоставив мой фрагмент кода и песочницуниже.

https://codesandbox.io/s/20756jrz8p

MarkerClick = e => {
console.log("e----->", e);
this.setState({
  viewport: { center: [20, 6], zoom: 7 }
});
//this.refs.mymap.leafletElement.setZoom(8);
//let bounds = this.refs.mymap.leafletElement.fitBounds();
//console.log("bounds----->", bounds);

console.log(
  "after setting state zoomlevel bounds showCard--->",
  this.state.zoom
);

// this.setState({ zoom: 18 });

//this.setState({ zoomLevel: 7 });

};

1 Ответ

0 голосов
/ 13 марта 2019

Значение масштабирования, которое вы использовали в MarkerClick () ниже текущего значения масштабирования ( zoom = 8 ). Следовательно, вы не получаете правильный зум. Используйте Zoom = 14 или 16 и другой набор координат вместо [20,6].

Например:

MarkerClick = e => {
...
    this.setState({
          viewport: { center: [43.39528702235596, 6.294845731267186], zoom: 16 }
    });
...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...