使用百度地图文档setMapStyleV2不起作用怎样解决?

场景:

当我们需要使用百度地图定义自定义的样式时,设置自定义样式,配置完成拿到样式id时不起作用,有两种解决方案


1、查看vue版本问题

在public文件夹下的index.html中引入的script标签内容

原本的引入:

<script type="text/javascript" src="//api.map.baidu.com/api?v=2.0&ak=AK值"></script>

更改之后:

<script type="text/javascript" src="//api.map.baidu.com/api?v=3.0&ak=AK值"></script>

将v=2.0改为v=3.0版本问题

2、在创建实例时,使用的ref定义,所以在定义时需要加上.value才可以生效

具体代码:

// 地图嵌入

    const baiduRef = ref();
    const map = ref();
    const point = ref();
    const marker = ref();

    function initMap(lng = 116.405725, lat = 39.935362) {
      map.value = new BMap.Map(baiduRef.value);
      point.value = new BMap.Point(lng, lat);
      //   console.log(point.value, 858585);
      marker.value = new BMap.Marker(point.value);

      map.value.centerAndZoom(point.value, 15);
      map.value.enableScrollWheelZoom(true); //滚轮缩放
      map.value.addOverlay(marker.value);
      //   样式id,加上.value
      map.value.setMapStyleV2({
        styleId: "样式ID",
      });

    }

你可能感兴趣的:(javascript,前端,vue.js)