高德地图引入遮罩后获取地区数据的时候遮罩又消失了,为什么尼?

引入遮罩的目的是为了地图只显示中国区域,但遮罩是可以正常覆盖掉中国地图外其他区域的,但获取到了接口数据,将全国各地的数据渲染到地图上面后,遮罩就整体消失了,为什么尼?
图一:遮罩效果:
高德地图引入遮罩后获取地区数据的时候遮罩又消失了,为什么尼?
图二:获取到数据后遮罩消失了:
高德地图引入遮罩后获取地区数据的时候遮罩又消失了,为什么尼?
期望的效果是:
遮罩成功遮住中国地图以外的地图,但中国地图各区域的数据也能正常显示。
代码:

// 初始化地图相关实例

initMap() {

const that = this;

lazyAMapApiLoaderInstance.load().then(() => {

new AMap.DistrictSearch({

extensions: "all",

subdistrict: 0

}).search("中国", function(status, result) {

// 外多边形坐标数组和内多边形坐标数组

var outer = [

new AMap.LngLat(-360, 90, true),

new AMap.LngLat(-360, -90, true),

new AMap.LngLat(360, -90, true),

new AMap.LngLat(360, 90, true)

];

var holes = result.districtList[0].boundaries;

var pathArray = [outer];

pathArray.push.apply(pathArray, holes);

var polygon = new AMap.Polygon({

pathL: pathArray,

strokeColor: "#00eeff",

strokeWeight: 1,

fillColor: "#71B3ff",

fillOpacity: 0.9

});

polygon.setPath(pathArray);

console.log(polygon, "polygon");

that.map.add(polygon);

that.setMapData("", "", ""); // 此方法为获取后端数据渲染各地区的数量

});

that.map = new AMap.Map("container", {

zoom: 4.5,

center: [113.612427, 36.303573],

mapStyle: "amap://styles/whitesmoke"

});

// that.setMapData('','','');

});

},


回答:

已解决,先将遮罩封装成一种方法,在加载数据的时候调用遮罩方法

以上是 高德地图引入遮罩后获取地区数据的时候遮罩又消失了,为什么尼? 的全部内容, 来源链接: utcz.com/p/936738.html

回到顶部