百度地图——点击地图任一点自动识别地址

在这里插入图片描述

<script src="http://api.map.baidu.com/api?type=webgl&v=1.0&ak=OAl2SfB2f5hno9f8xNoglMMcRP3j4ty4"></script>

<div id="container" style="height:500px;width:500px"></div>

onMounted(() => {
    
    
  initMap()
})
let initMap = () => {
    
    
  var map = new BMapGL.Map('container'); // 创建Map实例
  map.centerAndZoom(new BMapGL.Point(116.404, 39.915), 12); // 初始化地图,设置中心点坐标和地图级别
  map.enableScrollWheelZoom(true); // 开启鼠标滚轮缩放
  map.addEventListener('click', function (e) {
    
    
    console.log('点击位置经纬度:' + e.latlng.lng + ',' + e.latlng.lat);
    map.clearOverlays(); // 清除所有标记点
    // 创建新的点标记
    var marker = new BMapGL.Marker(new BMapGL.Point(e.latlng.lng, e.latlng.lat));
    // 在地图上添加点标记
    map.addOverlay(marker);
    // 创建地理编码实例, 并配置参数获取乡镇级数据
    var myGeo = new BMapGL.Geocoder({
    
     extensions_town: true });
    // 根据坐标得到地址描述    
    myGeo.getLocation(new BMapGL.Point(e.latlng.lng, e.latlng.lat), function (result) {
    
    
      if (result) {
    
    
        console.log(result.address);
      }
    });
  });
}

猜你喜欢

转载自blog.csdn.net/weixin_43848576/article/details/129240681